#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
#include <utility>
#include <algorithm>
#include <functional>
#include <string>
#include <cstring>
#include <cmath>
#include <map>
#include <set>
#include <stack>
#define NMAX 100005
#define MOD 1000000007
#define INF 0x3f3f3f3f
#define pb push_back
using namespace std;
typedef pair<int, int> pii;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int sp[NMAX];
int main() {
int n,i,k,minst=INF,res=-INF,st,maxst,maxdr;
fin>>n>>k;
for(i=1;i<=n;++i) {
fin>>sp[i];
sp[i]+=sp[i-1];
}
for(i=k;i<=n;++i) {
if(sp[i-k] < minst) {
minst=sp[i-k];
st=i-k+1;
}
if(sp[i]-minst>res) {
res=sp[i]-minst;
maxdr=i;
maxst=st;
}
res=max(res,sp[i]-minst);
}
fout<<maxst<<' '<<maxdr<<' '<<res;
return 0;
}