Pagini recente » Cod sursa (job #255162) | Cod sursa (job #1238067) | Cod sursa (job #719164) | Cod sursa (job #2966648) | Cod sursa (job #1895692)
#include <fstream>
#include <iostream>
#define maxn 50001
#define INF 0x3f3f3f3f
using namespace std;
int n, k, s[maxn];
int best[maxn], maxim = -INF, beg, endn, minim = INF;
int d[maxn], st = 1, dr;
ifstream f("secv2.in");
ofstream g("secv2.out");
int main(){
f >> n >> k;
for(int i=1; i<=n; ++i) f >> s[i], s[i]+=s[i-1];
for(int i=1; i<=n; ++i){
if(s[i] < minim){
minim = s[i];
d[i] = minim;
}
else d[i] = d[i-1];
if(i - k >= 0 and s[i] - d[i-k] > maxim){
maxim = s[i] - d[i-k];
beg = i-k+1;
endn = i;
}
}
g << beg << ' ' << endn << ' ' << maxim;
}