Cod sursa(job #2154419)
| Utilizator | Data | 6 martie 2018 22:26:38 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.65 kb |
#include <fstream>
#define inf 0x3f3f3f3f
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
inline void Read() {
int N;
fin >> N;
int s = 0, inceput = 0, in = 0, x, maxx = -inf, sf = 0;
for (int i = 1; i <= N; i++) {
fin >> x;
if (s < 0) {
s = x;
in = i;
}
else {
s += x;
}
if (s > maxx) {
maxx = s;
inceput = in;
sf = i;
}
}
fout << maxx << " " << inceput << " " << sf;
}
int main () {
Read();
fin.close(); fout.close(); return 0;
}
