Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在线判断:数组规范化,我不&x27;我不知道为什么我错了_C++ - Fatal编程技术网

C++ 在线判断:数组规范化,我不&x27;我不知道为什么我错了

C++ 在线判断:数组规范化,我不&x27;我不知道为什么我错了,c++,C++,说明: 对于由多个非负int组成的数组,数组规范化意味着每个元素将被数组的和除。假设数组至少由一个元素组成,并且元素的和不会超过int的最大值 输入: 几个非负整数 输出: 标准化的结果 样本输入 1234 样本输出 0.10 0.20 0.30 0.40 我认为这是一个容易的问题,但接受率只有12/1352。这是我的代码 #include <vector> #include <iostream> #include <iomanip> using namesp

说明: 对于由多个非负int组成的数组,数组规范化意味着每个元素将被数组的和除。假设数组至少由一个元素组成,并且元素的和不会超过int的最大值

输入: 几个非负整数

输出: 标准化的结果

样本输入 1234

样本输出 0.10 0.20 0.30 0.40

我认为这是一个容易的问题,但接受率只有12/1352。这是我的代码

#include <vector>
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int a,t=0,sum=0;
    vector<int> arr;
    while(cin>>a)
    {
        arr.push_back(a);
        t++;
    }
    for(int i=0;i<t;i++)
        sum+=arr[i];
    if(sum)
    {
        cout<<setiosflags(ios::fixed)<<setprecision(2)<<1.0*arr[0]/sum;
        for(int i=1;i<t;i++)
        {
            cout<<setiosflags(ios::fixed)<<setprecision(2)<<" "<<1.0*arr[i]/sum;
        }
    }else
    {
        for(int i=0;i<t;i++)
            if(i==0)
                cout<<"0.00";
            else
                cout<<" 0.00";
    }
    return 0;
}

#包括
#包括
#包括
使用名称空间std;
int main()
{
int a,t=0,和=0;
向量arr;
而(cin>>a)
{
arr.推回(a);
t++;
}

对于(inti=0;i是的,的确,你是对的,这是一个简单的问题

cout<<setiosflags(ios::fixed)<<setprecision(2)<<" "<<1.0*arr[i]/sum;

是的,的确,你是对的,这是一个简单的问题。你的输出语句

cout<<setiosflags(ios::fixed)<<setprecision(2)<<" "<<1.0*arr[i]/sum;

coutWhat do
接受率仅为12/1352
mean?@goodvibration这意味着OP正在使用一些在线编程测试软件,该软件提供了1352个神秘的测试用例,OP的解决方案只通过了12个。此外,您的代码看起来比它应该的要麻烦得多。每件事都分为几个用例,似乎是pretty redundant。我无法立即理解为什么几乎所有的测试用例都会失败。优先级是正确的,精度是正确的,类型是正确的(或者至少在问题约束条件下是足够的)。问题可能是在他们想要输出的重要数字方面没有得到充分的说明。这就是“挑战”的问题像这样。
接受率仅为12/1352是什么意思?@goodvibration这意味着OP正在使用一些在线编程测试软件,该软件提供了1352个神秘的测试用例,OP的解决方案只通过了12个。而且,你的代码看起来比它应该的要麻烦得多。所有东西都分为几个用例,似乎是pretty冗余。我无法立即理解为什么几乎所有的测试用例都会失败。优先级是正确的,精度是正确的,类型是正确的(或者至少在问题约束条件下是足够的)。可能是问题在他们想要输出的重要数字方面没有得到充分的说明。这就是像这样的“挑战”的问题。