Testing 极大数误差
我很快就要参加一个性别测试。 我试图在代码中找到一个修改,通过使用LONG而不是INT来避免极端大的数字错误。。。但这并不奏效 有人试过使用Codibility演示测试并得到100分吗 我浏览了以前的帖子,但没有找到解决这个问题的方法 我的代码:复杂性O(N)。。。我还是得了94分Testing 极大数误差,testing,Testing,我很快就要参加一个性别测试。 我试图在代码中找到一个修改,通过使用LONG而不是INT来避免极端大的数字错误。。。但这并不奏效 有人试过使用Codibility演示测试并得到100分吗 我浏览了以前的帖子,但没有找到解决这个问题的方法 我的代码:复杂性O(N)。。。我还是得了94分 // you can also use includes for example: // #include <algorithm> #include<iostream> #include
// you can also use includes for example:
// #include <algorithm>
#include<iostream>
#include<vector>
#include<math.h>
int equi ( const vector<int> &A ) {
if((int)A.size()==0)
return -1;
long int sum_l = A[0];
long int total_sum =0;
for(int i =0; i<(int)A.size();i++){
total_sum = total_sum + A[i];
}
int flag =0;
total_sum = total_sum -A[0];
if(total_sum == 0)
return 0;
for(int i=1; i<(int)A.size()-1;i++){
total_sum = total_sum - A[i];
if(sum_l ==total_sum){
flag=1;
return i;
}
sum_l= sum_l + A[i];
}
if(sum_l ==0)
return (int)A.size()-1;
if(flag ==0)
return -1;
}
//您还可以使用include,例如:
//#包括
#包括
#包括
#包括
内部均衡(常数向量&A){
如果((int)A.size()==0)
返回-1;
长整数和=A[0];
长整型总和=0;
对于(int i=0;i我使用了long
,我没有问题。我使用了long
,我没有问题。试试这个
int left = A[0];
int right = 0;
for(int i: A){
right += i;
}
right -= left;
int diff = Math.abs(left - right);
for (int i = 1; i < A.length-1; i++) {
left += A[i];
right -= A[i];
int a = Math.abs(left - right);
if(diff > a){
diff = a;
}
}
return diff;
int left=A[0];
int right=0;
对于(int i:A){
右+=i;
}
右-=左;
int diff=Math.abs(左-右);
for(int i=1;ia){
diff=a;
}
}
返回差;
试试这个
int left = A[0];
int right = 0;
for(int i: A){
right += i;
}
right -= left;
int diff = Math.abs(left - right);
for (int i = 1; i < A.length-1; i++) {
left += A[i];
right -= A[i];
int a = Math.abs(left - right);
if(diff > a){
diff = a;
}
}
return diff;
int left=A[0];
int right=0;
对于(int i:A){
右+=i;
}
右-=左;
int diff=Math.abs(左-右);
for(int i=1;ia){
diff=a;
}
}
返回差;
Opps我刚刚尝试了long long for sum\u l和total\u sum!错误得到了解决!!这个问题似乎离题了,因为它是关于一个打字错误。Opps我刚刚尝试了long long for sum\u l和total\u sum!错误得到了解决!!这个问题似乎离题了,因为它是关于一个打字错误。