Cod sursa(job #824421)
Utilizator | Andrei Mazareanu mazaandrei | Data | 26 noiembrie 2012 16:27:18 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.37 kb |
#include<fstream>
using namespace std;
int a[6000000],s,best,start,fin,n,ii;
ifstream f("ssm.in"); ofstream g("ssm.out");
int main(){
f>>n; best=-999999999;
for(int i=1;i<=n;++i) f>>a[i];
start=fin=1;
for(int i=1;i<=n;++i){
if(s<0){ s=a[i]; ii=i;}
else s+=a[i];
if(best<s){ best=s; start=ii; fin=i;}
}
g<<best<<' '<<start<<' '<<fin;
return 0;
}