第一道动态规划题,好有成就感,哈哈!
Max Sum
#include <iostream>
using namespace std;
int main()
{
int T,N,i,num,sum,temp,begin,end,max,n;
n=0;
cin >> T;
while(T>=1)
{
sum=0;
max=-1001;
begin=1;
temp=1;
end=1;
cin >> N;
for(i=1; i<=N; i++)
{
cin >> num;
sum += num;
if(sum < num)
{
sum=num;
temp=i;
}
if(sum > max)
{
max=sum;
begin=temp;
end=i;
}
}
n++;
cout << "Case " << n << ":" << endl;
cout << max << " " << begin << " " << end << endl;
if(T>1) cout << endl;
T--;
}
}