1 1 1
1000000000
2 1
 20 2 15
12698951 55128070 116962690 156763505 188535242 194018601 269939893 428710623 442819431 483000923 516768937 552903993 633087286 656092270 671535141 714291344 717660646 846508634 879748146 937368929
2 7
1 2
2 4
1 19
1 12
1 5
2 18
2 11
1 16
2 1
2 3
2 19
1 17
2 9
2 6
 6 3 10
62417580 78150524 410053501 582708235 630200761 760672946
2 2
1 5
1 2
1 4
2 4
2 1
2 1
1 6
2 5
2 6

NO
 NO
NO
NO
NO
NO
NO
YES
NO
NO
 NO
YES
NO
NO
YES
YES

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.PriorityQueue;
import java.util.StringTokenizer;

public class C1_A {

	static class M implements Comparable<M> {
		int t, idx;

		M(int i, int j) {
			t = i;
			idx = j;
		}

		@Override
		public int compareTo(M o) {
			return o.t - t;
		}

	}

	public static void main(String[] args) throws NumberFormatException, IOException {
		Scanner sc = new Scanner();
		PrintWriter out = new PrintWriter(System.out);

		int N = sc.nextInt();
		int K = sc.nextInt();
		int Q = sc.nextInt();

		PriorityQueue<M> q = new PriorityQueue<M>();
		M[] a = new M[N];
		for (int i = 0; i < N; i++) {
			a[i] = new M(sc.nextInt(), i);
		}

		LOOP: while (Q-- > 0) {
			int t = sc.nextInt();
			int id = sc.nextInt() - 1;
			if (t == 1) {
				q.add(a[id]);
			} else {
				ArrayList<M> tmp = new ArrayList<M>();
				int x = 0;
				while (!q.isEmpty()) {
					if (x == K)
						break;
					tmp.add(q.remove());
					x++;
				}
				boolean ok = false;
				int c = 0;
				for (M aa : tmp) {
					if (c == K)
						break;
					if (aa.idx == id) {
						ok = true;
						break;
					}
					c++;
				}

				if (ok)
					out.println("YES");
				else
					out.println("NO");

				for (M aa : tmp)
					q.add(aa);
			}
		}

		out.flush();
		out.close();
	}

	static class Scanner {
		BufferedReader br;
		StringTokenizer st;

		Scanner() {
			br = new BufferedReader(new InputStreamReader(System.in));
		}

		Scanner(String file) throws FileNotFoundException {
			br = new BufferedReader(new FileReader(file));
		}

		Boolean ready() throws IOException {
			return br.ready();
		}

		String next() throws IOException {
			while (st == null || !st.hasMoreTokens())
				st = new StringTokenizer(br.readLine());
			return st.nextToken();
		}

		int nextInt() throws NumberFormatException, IOException {
			return Integer.parseInt(next());
		}

		String nextLine() throws IOException {
			return br.readLine();
		}

		long nextLong() throws NumberFormatException, IOException {
			return Long.parseLong(next());
		}

		Double nextDouble() throws NumberFormatException, IOException {
			return Double.parseDouble(next());
		}

	}
}