Cod sursa(job #3339284)
| Utilizator | Data | 7 februarie 2026 12:11:16 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 95 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.61 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
long long s;
int n, st = 1, dr = 1, rs, rd;
long long x, maxi = INT_MIN;
int main()
{
in >> n;
in >> s;
for (int i = 1; i < n; ++i) {
in >> x;
if (s + x > x) {
s += x;
dr++;
}
else {
st = dr + 1;
dr = st;
s = x;
}
if (maxi < s) {
rs = st;
rd = dr;
maxi = s;
}
}
out << maxi << " " << rs << " " << rd;
return 0;
}
