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 sys

gl_mini = -1
gl_idx = -1
gl_free = 0


def put_in_window(window, val, idx):
	global gl_idx
	global gl_mini
	global gl_free

	if gl_mini < 0:
		window[0] = (idx, val)
		gl_mini = val
		gl_idx = 0
		gl_free -= 1
		#print gl_mini
		return None

	if gl_free > 0:
		window[len(window)-gl_free] = (idx, val)
		gl_free -= 1
		for i, el in enumerate(window):
			if el[1] > 0 and el[1] < gl_mini:
				gl_idx = i
				gl_mini = el[1]
		#print gl_mini
		return None

	if val < gl_mini:
		#print gl_mini
		return None

	window[gl_idx] = (idx, val)

	gl_mini = window[0][1]
	gl_idx = 0
	for i,el in enumerate(window):
		if el[1] < gl_mini:
			gl_idx = i
			gl_mini = el[1]	
	#print gl_mini
	return None		



def main():
	global gl_free
	n,k,q = map(int,raw_input().split(' '))
	friends = map(int,raw_input().split(' '))
	gl_free = k
	window = [(0,0)]*k
	answer = []
	for i in range(q):
		typ, idd = map(int,raw_input().split(' '))
		flag = False
		if typ == 1:
			put_in_window(window, friends[idd-1], idd)
			#print window
		if typ == 2:
			for el in window:
				if el[0] == idd:
					flag = True
					break
			if flag == True:
				answer.append('YES')
			else:
				answer.append('NO')
	sys.stdout.write('\n'.join(answer))


if __name__ == '__main__':
	main()