Pagini recente » Cod sursa (job #3294785) | Cod sursa (job #1531476) | Cod sursa (job #2886398) | Cod sursa (job #3342744) | Cod sursa (job #3309364)
//var dinamica
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("secv2.in");
ofstream fout ("secv2.out");
int v[6000003], s[6000003];
int main(){
int n, k;
fin >> n >> k;
for (int i = 1; i <= n; i++){
fin >> v[i];
s[i] = s[i-1]+v[i];
}
int best = v[1], st, dr, j=1, minsum=100000000000, sum=-1000000000000;
for (int i = k+1; i <= n; i++){
minsum = min(minsum, s[i-k]);
if (minsum==s[i-k]){
j=i-k+1;
}
sum=s[i]-minsum;
if (sum >= best){
best = sum;
st = j;
dr = i;
}
best = max(best, sum);
}
fout << st << " " << dr << " " << best;
return 0;
}