Cod sursa(job #970102)
Utilizator | Gabi Florea gabicluj | Data | 5 iulie 2013 23:47:32 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int a[7000005],n,best=-int(2e9),sum=0,final,ir=1,inceput,i;//-int(2e9) adica - 2*10 la puterea 9
int main()
{ f>>n;
for(i=1;i<=n;i++)
f>>a[i];
for(i=1;i<=n;i++)
{ if (sum < 0)
sum=a[i], ir = i;
else
sum+=a[i];
if (best<sum)
best=sum, inceput=ir, final=i; }
g<<best<<" "<<inceput<<" "<<final;
f.close();
g.close();
return 0;
}