Cod sursa(job #2609756)
Utilizator | Cosofret Octavian-Stefan Octav02 | Data | 3 mai 2020 14:13:05 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, v[6000005];
int main() {
fin >> n;
for (int i = 1; i <= n; i++)
fin >> v[i];
int maxSum = - 1 << 31, sum = 0, beg, endi, index;
for (int i = 1; i <= n; i++) {
if (sum < 0) {
sum = v[i];
index = i;
}
else
sum += v[i];
if (sum > maxSum) {
maxSum = sum;
beg = index;
endi = i;
}
}
fout << maxSum << ' ' << beg << ' ' << endi;
return 0;
}