#include <bits/stdc++.h>
using namespace std;
const int MAX = 1e6 + 5;
int t[MAX];
struct compare {
  bool operator()(int a, int b) { return t[a] < t[b]; }
};
int main() {
  int n, k, q;
  scanf("%d%d%d", &n, &k, &q);
  for (int i = 1; i <= n; ++i) scanf("%d", &t[i]);
  set<int, compare> displayed;
  while (q--) {
    int type, a;
    scanf("%d%d", &type, &a);
    if (type == 1) {
      displayed.insert(a);
      if ((int)displayed.size() > k) displayed.erase(displayed.begin());
    } else {
      if (displayed.find(a) == displayed.end())
        puts("NO");
      else
        puts("YES");
    }
  }
  return 0;
}
