Pagini recente » Profil 5giannae693te1 | Cod sursa (job #1927114) | Cod sursa (job #2173404)
#include <iostream>
#include <fstream>
#include <vector>
#include <climits>
#include <algorithm>
using namespace std;
ifstream f ("ssm.in");
ofstream g ("ssm.out");
int main(void) {
int n, i, x, maxx = INT_MIN, sp;
int start, end;
bool ok = 0;
vector<int> v;
f >> n;
v.push_back(-1);
for (i = 1; i <= n; i++) {
f >> x;
v.push_back(x);
if (x > 0) {
ok = 1;
}
if (x > maxx) {
maxx = x;
}
}
// sunt doar numere negative
if (ok == 0) {
g << maxx << "\n";
} else {
sp = v[1];
start = 0;
end = start;
for (i = 2; i <= n; i++) {
if (sp >= 0) {
sp += v[i];
} else {
sp = v[i];
start = i;
}
if (sp > maxx) {
maxx = sp;
end = i;
}
}
g << maxx << " " << start << " " << end << "\n";
}
return 0;
}