Cod sursa(job #1027773)
Utilizator | Data | 13 noiembrie 2013 00:18:42 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.36 kb |
#include <fstream>
#
std::ifstream f ("ssm.in");
std::ofstream g ("ssm.out");
int N, Smax = -int(2e9), S, start, stop, sum, j;
int main()
{
f >> N;
for (int i = 1; i <= N; i++){
f >> S;
if(sum < 0) {sum = S; j = i;}
else sum += S;
if(sum > Smax) {Smax = sum; start = j; stop = i;}
}
g << Smax << " " << start << " " << stop;
return 0;
}