Cod sursa(job #1811796)
Utilizator | Data | 21 noiembrie 2016 16:42:44 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | gym1_emag_mediu_2016 | Marime | 0.47 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("ssm.in");
ofstream fout ("ssm.out");
int n,x;
int main()
{
fin>>n>>x;
int smax,sc=0, pi, pf, ii;
sc=x; smax=x; pi=1; pf=1; ii=1;
int i;
for(i=2;i<=n;++i)
{
fin>>x;
if(sc<0)
{
ii = i;
sc=x;
}
else sc+=x;
if(sc>smax)
{
smax=sc;
pi = ii;
pf=i;
}
}
fout<<smax<<" "<<pi<<" "<<pf;
return 0;
}