Cod sursa(job #1520473)
| Utilizator | Data | 8 noiembrie 2015 20:22:02 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.59 kb |
#include <cstdio>
using namespace std;
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
int n, i, j, s, t, d, x, y, k, mi, ma, ind, maax;
mi = 0;
ma = -(1<<30);
s = ind = maax = 0;
scanf("%d",&n);
for( i = 1; i <= n; ++i ){
scanf("%d",&k);
s += k;
if( s - mi > ma ){
ma = s - mi;
y = i;
x = ind + 1;
}
if( s < mi ){
ind = i;
mi = s;
}
}
printf("%d %d %d",ma,x,y);
return 0;
}
