Cod sursa(job #336818)
Utilizator | Data | 1 august 2009 17:31:49 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include<fstream.h>
#include <stdio.h>
#define N 6000005
#define in "ssm.in"
#define out "ssm.out"
ifstream f(in);
ofstream g(out);
int x, max=-N, n, suma=0, minpoz,poz,maxpoz, i;
int main()
{
freopen(in,"r",stdin);
freopen(out,"w",stdout);
f>>n;
for(i=1;i<=n;++i)
{
f>>x;
if(suma<0)suma=x, poz=i;
else suma+=x;
if(max<suma)max=suma, minpoz=poz, maxpoz= i;
}
g<<max<<" "<<minpoz<<" "<<maxpoz<<"\n";
return 0;
}