0

すぐにCodilityテストを受けなければなりません。INT の代わりに LONG を使用して EXTREME LARGE NUMBERS ERROR を回避するコードの変更を見つけようとしましたが、これは機能しませんでした。

CODILITY デモ テストを試して 100 点を取った人はいますか?

以前の投稿を確認しましたが、この特定の問題に対する解決策はありません。

MY CODE: COMPLEXITY O(N) ... それでも 94 でした。

   // 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;


}
4

2 に答える 2