#include <bits/stdc++.h>
using namespace std;
int gcd(int a, int b) { return b == 0 ? a : gcd(b, a % b); }
int lcm(int a, int b) { return (int)a * (b / gcd(a, b)); }
int main() {
  int n, k, ara[100000], tg;
  scanf("%d%d", &n, &k);
  bool flag = true;
  for (int i = 1; i <= n; i++) {
    scanf("%d", &ara[i]);
    if (i == k)
      tg = ara[i];
    else if (i > k) {
      if (ara[i] != tg) flag = false;
    }
  }
  if (!flag)
    printf("-1\n");
  else {
    int i;
    for (i = k; i >= 0; i--)
      if (ara[i] != tg) break;
    printf("%d\n", i);
  }
  return 0;
}
