Cod sursa(job #1961172)

Utilizator cris90robert@yahoo.comseretan cristian [email protected] Data 10 aprilie 2017 22:15:55
Problema Subsecventa de suma maxima Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
	
long bestSum,sum[60000],best[60000],i,N,max1,max2,min,a[60000];
fstream f("ssm.in",ios::in);
f>>N;
for(i=1;i<=N;i++)
	f>>a[i];
f.close();

sum[0] = 0;
for (i = 1; i <= N; i++) sum[i] = a[i] + sum[i-1];
min = sum[0];
bestSum=-9999999;
for (i = 1; i <= N; i++) {
    best[i] = sum[i] - min;
    if (min > sum[i]) 
		{min = sum[i];
	max1=i+1;
	
		}
    if (bestSum < best[i]) 
		{bestSum = best[i];
	max2=i;
		}
}
	


	fstream g("ssm.out",ios::out);
	g<<bestSum<<" "<<max1<<" "<<max2;
	g.close();
}