Cod sursa(job #1924937)
Utilizator | Data | 12 martie 2017 14:29:50 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.62 kb |
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
#include <fstream>
using namespace std;
int main()
{
ifstream f("ssm.in");
ofstream g("ssm.out");
int n, x, start = 0, end = 0, best = 0, sum = 0, index, i;
f >> n;
for(i = 1; i <= n; i++) {
cin >> x;
if(sum < 0) {
sum = x;
index = i;
} else {
best += sum;
}
if(sum > best) {
best = sum;
start = index;
end = i;
}
}
g << best << " " << start << " " << end;
return 0;
}