Cod sursa(job #2797658)
| Utilizator | Data | 10 noiembrie 2021 13:40:58 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 65 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.64 kb |
#include <fstream>
using namespace std;
ifstream fin ("ssm.in");
ofstream fout ("ssm.out");
int main()
{
int n;
fin >> n;
int s = 0, k, sMax = -1000000000, a = 1, b = 1;
int aMax = 1, bMax = 1;
for (int i = 1; i <= n; i ++) {
fin >> k;
s += k;
b = i;
if (s < 0) {
a = i;
s = k;
}
if (sMax < s) {
aMax = a;
bMax = b;
sMax = s;
}
}
if (sMax < s) {
sMax = s;
aMax = a;
bMax = b;
}
fout << sMax << " " << aMax << " " << bMax;
return 0;
}
