奋战杭电ACM(DAY2)1003

第一道动态规划题,好有成就感,哈哈!

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



原文地址:https://www.cnblogs.com/ques3512012019/p/3295215.html