Cod sursa(job #539736)
| Utilizator | Data | 23 februarie 2011 11:57:45 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.52 kb |
#include<fstream.h>
#include<iostream.h>
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int a[6000001];
long n,i,ic,is,s,smax,sf=0,pozc;
int main()
{
fin>>n;
for(i=1;i<=n;i++)
fin>>a[i];
smax=1;
s=a[1];ic=1;sf=0;
for(i=2;i<=n;i++)
{ if(s>0)
s=s+a[i];
else
{
s=a[i];
pozc=i;
}
if(smax<s)
{
smax=s;
sf=i;
ic=pozc;
}
}
fout<<smax<<" "<<ic<<" "<<sf;
return 0;
}
