Cod sursa(job #681369)

Utilizator bogdan353Costea Bogdan bogdan353 Data 16 februarie 2012 23:11:08
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include<fstream>
using namespace std;


#define inf 0x3f3f3f3f

int sum[6000003], mini,a,best,n;

int main()
{
	ifstream f("ssm.in");
	ofstream g("ssm.out");
	
	f>>n;
	
	mini=0;

	int max=-inf;
	int  t,p,u;
	for(int i=1;i<=n;i++)
	{
		f>>a;
		sum[i]=sum[i-1]+a;
	}
	
	for(int i=1;i<=n;i++)
	{
		
		
		best=sum[i]-mini;
		if(best>max)
		{
			max= best;
			p=t;
			u=i;
		}
		if(sum[i]<mini)
		{
			mini=sum[i];
			 t=i+1;
		}
		
	}
	
	g<<max<<" "<<p<<" "<<u;
}