Cod sursa(job #1953365)
Utilizator | Smoc George-Marian smoc_georgemarian | Data | 4 aprilie 2017 19:37:48 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include <fstream>
#define NMAX 6000000
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,i,a[NMAX];
int smax,s,pozinc=1,pozf=0,inc=1,f=0;
int main()
{fin>>n;
for(i=1;i<=n;i++)
fin>>a[i];
for(i=1;i<=n;i++)
{
s+=a[i];
if(s<0)
{
s=0;
inc=i+1;
f=i;
}
else
if(s>smax)
{
smax=s;
pozf=i;
pozinc=inc;
}
}
fout<<smax<<" "<<pozinc<<" "<<pozf;
return 0;
}