Cod sursa(job #430971)
Utilizator | Moise Razvan Bunicool | Data | 31 martie 2010 15:08:43 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 75 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include<cstdio>
using namespace std;
FILE *f=fopen("ssm.in","r"), *g=fopen("ssm.out","w");
long elem,n,max=-2000000000,min=0,i,j,sume[6000000],inc,sf=1;
int main()
{
fscanf(f,"%ld",&n);
for(i=1;i<=n;i++)
{
fscanf(f,"%ld",&sume[i]);
sume[i]+=sume[i-1]+elem;
if(max<sume[i]-min)
{
max=sume[i]-min;
inc=j+1;
sf=i;
}
if(min>sume[i])
min=sume[i], j=i;
}
fprintf(g,"%ld %ld %ld",max,inc,sf);
return 0;
}