Cod sursa(job #367578)
Utilizator | Adrian Draghici Addy. | Data | 22 noiembrie 2009 18:55:36 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <fstream.h>
int n, i, x, p, u, S, sol, solp, solu;
int main() {
ifstream f("ssm.in");
ofstream g("ssm.out");
f >> n >> S;
sol = S;
solp = solu = 1; p = u = 1;
for (i = 2; i <= n; i++) {
f >> x;
if (S + x >= x)
S += x, u = i;
else
S = x, p = u = i;
if (S > sol)
sol = S, solp = p, solu = u;
}
g << sol << " " << solp << " " << solu;
f.close();
g.close();
return 0;
}