Cod sursa(job #1829718)
| Utilizator | Data | 15 decembrie 2016 16:16:19 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 40 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.77 kb |
#include <iostream>
#include <fstream>
#include <limits.h>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int v[100000];
int main()
{
int s=0, i, j, n, mi=1, mj, ms=INT_MIN, k=0;
f>>n;mj=n;k=1;
for(i=1; i<=n; i++)
{
f>>v[i];
s=s+v[i];
if(s>ms)
{
ms=s;
mi=k;
mj=i;
}
if(s<0)
{
s=0;
k=i+1;
}
}
g<<ms<<' '<<mi<<' '<<mj;
return 0;
}
/*for(i=1; i<=n; i++)
{
if(v[i]>0)
{
s+=v[i];
}
if(s<0)
{
j=i+1;
}
if(s>ms)
{
ms=s;
mj=i;
mi=j;
}
}*/
