Cod sursa(job #1211626)
Utilizator | Data | 22 iulie 2014 22:43:40 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.71 kb |
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, x, i, s, smaxim, umaxim, pmaxim, p;
int main() {
fin>>n>>x;
s = x;
p = 1;
for (i=2;i<=n;i++) {
fin>>x;
if (x + s >= x) {
s = s + x;
} else {
s = x;
p = i;
}
if (s > smaxim) {
smaxim = s;
pmaxim = p;
umaxim = i;
} else
if (s == smaxim) {
if (p < pmaxim) {
pmaxim = p;
umaxim = i;
}
}
}
fout<<smaxim<<" "<<pmaxim<<" "<<umaxim;
return 0;
}