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

R=lambda:map(int,raw_input().split())
n,k,q=R()
N=range(n)
t=sorted(zip(R(),N))
p=[0]*(n+1)
f=p[:]
c=p[:]
for i in N:
  p[t[i][1]+1]=n-i
for _ in range(q):
  a,b=R()
  if a<2:
    f[b]=1
    x=p[b]
    while x<=n:
      c[x]+=1
      x+=x&-x
  else:
    x,y=p[b],0
    while x>0:
      y+=c[x]
      x-=x&-x
    print 'YES' if f[b] and y<=k else 'NO'
