Cod sursa(job #2244602)
| Utilizator | Data | 23 septembrie 2018 10:54:30 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.57 kb |
#include <fstream>
#include <cstdio>
#define INF 1e9
using namespace std;
int n, a, sp, smin, pmin, dr, st, scrt, smax;
int main()
{
freopen("ssm.in", "r", stdin);
freopen("ssm.out", "w", stdout);
scanf("%d", &n);
smax = -INF;
for(int i = 1; i <= n; i++){
scanf("%d", &a);
sp += a;
scrt = sp-smin;
if (scrt>smax){
smax = scrt;
st = pmin + 1;
dr = i;
}
if(sp < smin) smin = sp, pmin = i;
}
printf("%d %d %d",smax,st,dr);
return 0;
}
