// you can also use includes, for example:
// #include <algorithm>
#include<limits.h>
int solution(vector<int> &A) {
// write your code in C++98
if(A.size() < 2) return 0;
//...precalculate the sum array
vector<int> sum(A.size()+1, 0);
for(int i = 0; i < A.size(); ++i)
sum[i+1] = sum[i]+A[i];
//...using sum array to get the min diff in O(n) time
int minDiff = INT_MAX;
for(int i = 1; i < A.size(); ++i)
minDiff = min(minDiff, abs(sum[A.size()]-2*sum[i]));
//...return the result
return minDiff;
}
[codility]Tape-Equilibrium
最新推荐文章于 2019-08-17 11:00:05 发布