#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, i, j, vitorias[550];
  long long int powers[550], maior = -1, k;
  deque<int> jogo;
  cin >> n >> k;
  for (i = 1; i <= n; i++)
    cin >> powers[i], jogo.push_back(i), vitorias[i] = 0,
                                         maior = max(maior, powers[i]);
  if (k < n - 1) {
    while (true) {
      int p1, p2;
      p1 = jogo.front();
      jogo.pop_front();
      p2 = jogo.front();
      jogo.pop_front();
      if (powers[p1] > powers[p2]) {
        vitorias[p1]++;
        if (vitorias[p1] >= k) {
          printf("%lld\n", powers[p1]);
          return 0;
        }
        jogo.push_front(p1);
        jogo.push_back(p2);
        vitorias[p2] = 0;
      } else {
        vitorias[p2]++;
        if (vitorias[p2] >= k) {
          printf("%lld\n", powers[p2]);
          return 0;
        }
        jogo.push_front(p2);
        jogo.push_back(p1);
        vitorias[p1] = 0;
      }
    }
  } else {
    printf("%lld\n", maior);
  }
  return 0;
}
