#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
using ll = long long;
using ld = long double;
#define all(x) x.begin(),x.end()
#define v(x) vector<x>
#define nl '\n'
#define fxd(x) fixed << setprecision(x)
template<class t> using ordered_set = tree<t, null_type, less<t>, rb_tree_tag, tree_order_statistics_node_update>;
template<class t> using ordered_multiset = tree<t, null_type, less_equal<t>, rb_tree_tag, tree_order_statistics_node_update>;
ll n , d;
v(ll) arr;
pair<ll,ll> can(double x)
{
v(double) prefsum(n+1,0);
// val,indx
vector<pair<double,ll>> prefmin(n+1);
for(ll i = 1; i <= n; i++)
{
prefsum[i] = prefsum[i-1] + (double)arr[i] - x;
}
prefmin[0] = {0ll,0ll};
for(ll i = 1; i <= n; i++)
{
if(prefsum[i] < prefmin[i-1].first)
{
prefmin[i] = {prefsum[i],i};
}
else
{
prefmin[i] = prefmin[i-1];
}
}
for (ll r = d; r <= n; r++)
{
if(prefsum[r] - prefmin[r-d].first >= 0) return make_pair(prefmin[r-d].second+1,r);
}
return make_pair(-1ll,-1ll);
}
int main()
{
ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);
cin >> n>> d;
arr.resize(n+1);
for (int i = 1; i <= n; i++)
{
cin >> arr[i];
}
ld l = 0, r = 1e8,mid;
pair<ll,ll> ans = {1ll,1ll};
for (int i = 0; i < 80; i++)
{
mid = (l+r)/2;
pair<ll,ll> cur = can(mid);
if(cur.first == -1ll && cur.second == -1ll)
{
r = mid;
}
else
{
l = mid;
ans = cur;
}
}
cout << ans.first << " " << ans.second;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlIDxleHQvcGJfZHMvYXNzb2NfY29udGFpbmVyLmhwcD4KI2luY2x1ZGUgPGV4dC9wYl9kcy90cmVlX3BvbGljeS5ocHA+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp1c2luZyBuYW1lc3BhY2UgX19nbnVfcGJkczsKdXNpbmcgbGwgPSBsb25nIGxvbmc7CnVzaW5nIGxkID0gbG9uZyBkb3VibGU7CgojZGVmaW5lIGFsbCh4KSAgeC5iZWdpbigpLHguZW5kKCkKI2RlZmluZSB2KHgpIHZlY3Rvcjx4PgojZGVmaW5lIG5sICdcbicKI2RlZmluZSBmeGQoeCkgZml4ZWQgPDwgc2V0cHJlY2lzaW9uKHgpCnRlbXBsYXRlPGNsYXNzIHQ+IHVzaW5nIG9yZGVyZWRfc2V0ID0gdHJlZTx0LCBudWxsX3R5cGUsIGxlc3M8dD4sIHJiX3RyZWVfdGFnLCB0cmVlX29yZGVyX3N0YXRpc3RpY3Nfbm9kZV91cGRhdGU+Owp0ZW1wbGF0ZTxjbGFzcyB0PiB1c2luZyBvcmRlcmVkX211bHRpc2V0ID0gdHJlZTx0LCBudWxsX3R5cGUsIGxlc3NfZXF1YWw8dD4sIHJiX3RyZWVfdGFnLCB0cmVlX29yZGVyX3N0YXRpc3RpY3Nfbm9kZV91cGRhdGU+OwoKbGwgbiAsIGQ7CnYobGwpIGFycjsKCnBhaXI8bGwsbGw+IGNhbihkb3VibGUgeCkKewogICAgdihkb3VibGUpIHByZWZzdW0obisxLDApOwogICAgICAgICAgICAvLyB2YWwsaW5keAogICAgdmVjdG9yPHBhaXI8ZG91YmxlLGxsPj4gcHJlZm1pbihuKzEpOyAgICAKICAgIGZvcihsbCBpID0gMTsgaSA8PSBuOyBpKyspCiAgICB7CiAgICAgICAgcHJlZnN1bVtpXSA9IHByZWZzdW1baS0xXSArIChkb3VibGUpYXJyW2ldIC0geDsgCiAgICB9CiAgICBwcmVmbWluWzBdID0gezBsbCwwbGx9OwogICAgZm9yKGxsIGkgPSAxOyBpIDw9IG47IGkrKykKICAgIHsKICAgICAgICBpZihwcmVmc3VtW2ldIDwgcHJlZm1pbltpLTFdLmZpcnN0KQogICAgICAgIHsKICAgICAgICAgICAgcHJlZm1pbltpXSA9IHtwcmVmc3VtW2ldLGl9OwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICBwcmVmbWluW2ldID0gcHJlZm1pbltpLTFdOwogICAgICAgIH0KICAgIH0KICAgIAogICAgZm9yIChsbCByID0gZDsgciA8PSBuOyByKyspCiAgICB7CiAgICAgICAgaWYocHJlZnN1bVtyXSAtIHByZWZtaW5bci1kXS5maXJzdCA+PSAwKSByZXR1cm4gbWFrZV9wYWlyKHByZWZtaW5bci1kXS5zZWNvbmQrMSxyKTsgCiAgICB9CgogICAgcmV0dXJuIG1ha2VfcGFpcigtMWxsLC0xbGwpOwp9CgppbnQgbWFpbigpCnsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKG51bGxwdHIpOyBjb3V0LnRpZShudWxscHRyKTsKICAgIGNpbiA+PiBuPj4gZDsKICAgIGFyci5yZXNpemUobisxKTsKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykKICAgIHsKICAgICAgICBjaW4gPj4gYXJyW2ldOwogICAgfQoKICAgIGxkIGwgPSAwLCByID0gMWU4LG1pZDsKICAgIHBhaXI8bGwsbGw+IGFucyA9IHsxbGwsMWxsfTsKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IDgwOyBpKyspCiAgICB7CiAgICAgICAgbWlkID0gKGwrcikvMjsKCiAgICAgICAgcGFpcjxsbCxsbD4gY3VyID0gY2FuKG1pZCk7CiAgICAgICAgaWYoY3VyLmZpcnN0ID09IC0xbGwgJiYgY3VyLnNlY29uZCA9PSAtMWxsKQogICAgICAgIHsKICAgICAgICAgICAgciA9IG1pZDsKICAgICAgICB9CiAgICAgICAgZWxzZQogICAgICAgIHsKICAgICAgICAgICAgbCA9IG1pZDsKICAgICAgICAgICAgYW5zID0gY3VyOwogICAgICAgIH0KICAgIH0KICAgIAogICAgY291dCA8PCBhbnMuZmlyc3QgPDwgIiAiIDw8IGFucy5zZWNvbmQ7Cn0=