-
前引
为了蓝桥杯,PTA,为了未来
01-复杂度2 Maximum Subsequence Sum
-
他人思路鸣谢
无
-
我的代码
#include<iostream>
using namespace std;
int main ()
{
int tmpstart,start,end;
int N;
cin>>N;
int list[N];
for(int tmp=0;tmp<=N-1;tmp++)
{
cin>>list[tmp];
}
int thissum,maxsum;
int i;
thissum=0;maxsum=-1;
start=list[0];
tmpstart=list[0];
for(i=0;i<=N-1;i++)
{
thissum+=list[i];
if(thissum>maxsum)
{
maxsum=thissum;
end=list[i];
start=tmpstart;
}
else if(thissum<0)
{
thissum=0;
tmpstart=list[i+1];
}
}
cout<<maxsum<<" "<<start<<' '<<end;
return 0;
}
-
解析