// fasor.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
#include <iostream>
#include <queue>
#include <algorithm>
#define ll long long
using namespace std;
ll n, i;
vector<ll>st, x;
void build(ll p, ll l, ll r)
{
if (l == r)
{
st[p] = x[l];
return;
}
ll k = (l + r) / 2;
build(2 * p, l, k);
build(2 * p + 1, k + 1, r);
st[p] = max(st[2 * p], st[2 * p + 1]);
}
ll leker(ll p, ll l, ll r, ll a, ll b)
{
if (a <= l && r <= b)
{
return st[p];
}
if (r < a || b < l)return 0;
ll k = (l + r) / 2;
return max(leker(2 * p, l, k, a, b), leker(2 * p + 1, k + 1, r, a, b));
}
ll k;
int main()
{
cin >> n >> k;
x.resize(n + 1);
st.resize(4 * n + 1);
for (int i = 1; i <= n; ++i)
cin >> x[i];
build(1, 1, n);
ll maxi = 0;
//for (auto& e : st)cout << e << " ";
//cout << "\n";
for (int i = 1; i <= k; ++i)
{
maxi = max(maxi, x[i]);
if (leker(1, 1, n, i, i + k) <= x[i]&& maxi <= x[i])
{
cout << i;
return 0;
}
}
for (int i = k + 1; i <= n; ++i)
{
if (leker(1, 1, n, i - k, i + k) <= x[i])
{
cout << i;
return 0;
}
}
cout << "-1";
return 0;
}
// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu
// Tips for Getting Started:
// 1. Use the Solution Explorer window to add/manage files
// 2. Use the Team Explorer window to connect to source control
// 3. Use the Output window to see build output and other messages
// 4. Use the Error List window to view errors
// 5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
// 6. In the future, to open this project again, go to File > Open > Project and select the .sln file