牛人路过可不可以帮忙找下错,菜鸟找不到错误在哪。。。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int Sum(vector<int>::iterator it1,vector<int>::iterator it2){
int sm=0;
for (;it1!=it2;++it1)
{
sm+=*it1;
}
return sm;
}
int main(){
int N;
cin>>N;
vector<int> vec;
int number;
for (int i=0;i<N;++i)
{
cin>>number;
vec.push_back(number);
}
int k;
cin>>k;
vector<int> re;
re.push_back(0); //没加这句之前就是25%
int sum=0;
vector<int>::iterator front;
vector<int>::iterator end = vec.end();
while(end!=vec.begin())
{
for (front=vec.begin();front != end;++front)
{
sum = Sum(front,end);
if(sum % k==0){
int n2=distance(front,end);
re.push_back(n2);
break;
}
}
--end;
}
sort(re.begin(),re.end());
cout<<*(re.end() -1);
return 0;
}