Cod sursa(job #1260937)
Utilizator | Data | 11 noiembrie 2014 19:33:25 | |
---|---|---|---|
Problema | Secventa 2 | Scor | 40 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <fstream>
using namespace std;
const int kMaxN = 50005;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int N, K, s[kMaxN], mn, sol = -2000000000, sol_start, sol_end;
int main() {
fin >> N >> K;
for (int i = 1; i <= N; ++i) {
int x;
fin >> x;
s[i] = s[i - 1] + x;
if (i >= K) {
if (s[i - K] < mn) {
mn = s[i - K];
sol_start = i - K + 1;
}
if (s[i] - mn > sol) {
sol = s[i] - mn;
sol_end = i;
}
}
}
fout << sol_start << " " << sol_end << " " << sol << "\n";
return 0;
}