Cod sursa(job #1149171)

Utilizator antonio0822jitarciuc paul-antonio antonio0822 Data 21 martie 2014 15:20:17
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <stdio.h>
#include <fstream>
#include <limits.h>
using namespace std;
int v[6000001],n,s[6000001];
int main()
{
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	int start,end,i,j,k,sc,smax=INT_MIN;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
		scanf("%d",&v[i]);
	for(i=1;i<=n;i++)
		s[i]=s[i-1]+v[i];
	for(i=1;i<=n;i++)s[i]=s[i-1]+v[i];
	for(i=1;i<=n;i++)
		for(j=i;j<=n;j++){
			sc=s[j]-s[i-1];
			for(k=i;k<=j;k++)
				sc+=v[k];
			if(sc>smax){
				smax=sc;
				start=i;
				end=j;
			}
		}
	printf("%d %d %d", smax , start , end);
	return 0;
}