Cod sursa(job #491718)
Utilizator | Data | 12 octombrie 2010 07:41:29 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.39 kb |
#include<fstream.h>
int i,v[6000001],u,a,p,s,n;
int max1=-2147;
int main(){
ifstream f("ssm.in");
ofstream g("ssm.out");
f>>n;
for( i=1;i<=n;i++)
f>>v[i];
p=u=a=1;
for(i=1;i<=n;i++){
if(s<0) {
s=0; a=i;
}
s+=v[i];
if(s>max1){
max1=s;
u=i;
p=a;
}
}
g<<max1<<" "<<p<<" "<<u;
f.close();
g.close();
return 0;
}