#include<bits/stdc++.h>
using namespace std;
const int N=1e8+5;
struct Node{
bool flag;
int id;
}a[N];
struct X{
int id,bh;
}u[N];
int n,k,q,x[N],sum[N],cnt=0;
bool cmp(X x,X y){return x.bh>y.bh;}
signed main(){
cin>>n>>k>>q;
for(int i=1;i<=n;i++) cin>>u[i].id,u[i].bh=i;
sort(u+1,u+n+1,cmp);
while(q--){
int l,p;cin>>l>>p;
if(!(l-1)){
a[p].flag=true;
cnt++;
if(cnt>k){
for(int i=1;i<=n;i++){
if(a[n].flag==true&&i==n){
cnt=2;break;
}
a[i].flag=false;cnt=1;
}
cnt--;
}
}else{
if(a[p].flag) puts("YES");
else puts("NO");
}
}
return 0;
}