stablegradients/pie-gem5-pairs huggingface dataset:
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

const int maxn=2e5+6;

int main()

{

	int n,k,q,a,vis[maxn],flag[maxn];

	scanf("%d%d%d",&n,&k,&q);

	memset(vis,0,sizeof(vis));

	memset(flag,0,sizeof(flag));

	for(int i=1;i<=q;i++)

	{

		scanf("%d",&a);

		vis[a]++;

	}

	for(int j=1;j<=n;j++)

	{

		if(q-vis[j]<k)

		{

			flag[j]=1;

		}

		else

		{

			flag[j]=0;

		}

	}

	for(int i=1;i<=n;i++)

	{

		if(flag[i]==1)

		{

			printf("Yes\n");

		}

		else

		{

			printf("No\n");

		}

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 2.583306690441085x):
#include <iostream>

#include <fstream>

#include <cstdio>

#include <vector>

#include <map>

#include <unordered_map>

#include <set>

#include <unordered_set>

#include <stack>

#include <queue>

#include <algorithm>

#include <string.h>

#include <string>

#include <math.h>

#include <iomanip>

using namespace std;



#define SORT(v) sort((v).begin(), (v).end())

#define RSORT(v) sort((v).rbegin(), (v).rend())

#define pb push_back



typedef pair<int, int> pii;

typedef long long ll;

typedef unsigned long long ull;



const int mod = (int)1e9 + 7;

const int mod2 = 998244353;



ll exp(ll taban, ll us, ll md) {

    ll carpan = taban % md;

	if(carpan == 0) return 0;

    ll temp = us;

    ll res = 1;

    while(temp){

        if(temp % 2) res = (res*carpan) % md;

        temp /= 2;

        carpan = (carpan*carpan) % md;

    }

    return res;

}

 

ll ebob(ll a, ll b){

    if(!a)return b;

    return ebob(b%a, a);

}



ll ekok(ll a, ll b){

    return (a*b)/ebob(a, b);

}



ll mul(ll a, ll b, ll md){

	return a*b % md;

}



vector<ll> fact;

vector<ll> inv_fact;

void fact_init(int n){

	fact.resize(n+5);

	inv_fact.resize(n+5);

	fact[0] = inv_fact[0] = 1;

	for(int i = 1; i <= n; i++){

		fact[i] = (fact[i-1] * i) % mod;

		inv_fact[i] = exp(fact[i], mod-2, mod);

	}

}



ll komb(ll a, ll b){

	if(a < b) return 0;

	return fact[a] * (inv_fact[a-b] * inv_fact[b] % mod) % mod;

}



const int N = 1e5+5;

int ans;



int main(){

	ios::sync_with_stdio(false); cin.tie(NULL);

	int n, k, q; cin>>n>>k>>q;

	int cnt[n+1] = {};

	int top = q;

	while(q--){

		int s; cin>>s; cnt[s]++;

	}

	for(int i = 1; i <= n; i++) cnt[i] = k - top + cnt[i];

	for(int i = 1; i <= n; i++) cnt[i] > 0 ? cout<<"Yes\n" : cout<<"No\n";

}
// Slower C++ solution:
#include<stdio.h>

#include<string.h>

#include<iostream>

using namespace std;

int main()

{

    int n,k,q,x;

    int a[100002]={0};

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        scanf("%d",&x);

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(a[i]+k-q>0)

            printf("Yes\n");

        else

            printf("No\n");

    }

}


// Faster C++ solution for the same problem (measured speedup: 1.3929681563507654x):
#include<iostream>

using namespace std;

int main(){

	int n,k,q,c;

	cin>>n>>k>>q;

	int p[n]{};

	for(int i=0;i<q;i++){

		cin>>c;

		p[c-1]++;

	}

	for(int i=0;i<n;i++){

		p[i]-=(q-k);

		cout<<(p[i]>0?"Yes":"No")<<endl;

	}

}
// Slower C++ solution:
#include<stdio.h>

#include<string.h>

#include<iostream>

using namespace std;

int main()

{

    int n,k,q,x;

    int a[100002]={0};

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        scanf("%d",&x);

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(a[i]+k-q>0)

            printf("Yes\n");

        else

            printf("No\n");

    }

}


// Faster C++ solution for the same problem (measured speedup: 1.3897178795897005x):
#include<iostream>

#include<cstdio>

#include<cstring>

using namespace std;

#define maxn 100010

#define LL long long

LL a[maxn];

int n;

int q;

LL K;

LL sum=0;

int main()

{

	cin>>n>>K>>q;

	

	for(int i=1;i<=q;i++)

	{

		int tmp;

		cin>>tmp;

		a[tmp]++;

		

	}

	for(int i=1;i<=n;i++)

	{

		a[i]+=K;

		a[i]-=q;

		if(a[i]<=0)

		{

			cout<<"No"<<endl; 

		}

		else

		{

			cout<<"Yes"<<endl;

		}

	}

	return 0;

}
// Slower C++ solution:
#include<stdio.h>

#include<string.h>

#include<iostream>

using namespace std;

int main()

{

    int n,k,q,x;

    int a[100002]={0};

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        scanf("%d",&x);

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(a[i]+k-q>0)

            printf("Yes\n");

        else

            printf("No\n");

    }

}


// Faster C++ solution for the same problem (measured speedup: 1.3932408940351744x):
#include <bits/stdc++.h>

using namespace std;

 

int skor[100010], b, c, d, a;

int main()

{

    cin >> b >> c >> d;

    for (int i = 1; i <= b; i++)

    {

        skor[i] = c - d;

    }

    for (int i = 1; i <= d; i++)

    {

        cin >> a;

        skor[a]++;

    }

    for (int i = 1; i <= b; i++)

    {

        if (skor[i] > 0)

        {

            cout << "Yes" << endl;

        }

        else

        {

            cout << "No" << endl;

        }

        

    }

    

}
// Slower C++ solution:
#include<stdio.h>

#include<string.h>

#include<iostream>

using namespace std;

int main()

{

    int n,k,q,x;

    int a[100002]={0};

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        scanf("%d",&x);

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(a[i]+k-q>0)

            printf("Yes\n");

        else

            printf("No\n");

    }

}


// Faster C++ solution for the same problem (measured speedup: 1.3720256064166787x):
#include <bits/stdc++.h>

using namespace std;

int main() {

	int n,k,a,q,nilai[100001],i;

	cin >> n >> k >> q ;

	for (i=1;i<=n;i++){

		nilai[i]=k-q;

	}

	for (i=1;i<=q;i++){

		cin >> a ;

		nilai [a]++;

		

	}for ( i=1;i<=n;i++){

		if(nilai[i]>0){

			cout << "Yes" << endl;

		}else {

			cout << "No" << endl;

		}	

	}

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 7.527741694511362x):
#include <bits/stdc++.h>

using namespace std;

int main() {

	int n,k,a,q,nilai[100001],i;

	cin >> n >> k >> q ;

	for (i=1;i<=n;i++){

		nilai[i]=k-q;

	}

	for (i=1;i<=q;i++){

		cin >> a ;

		nilai [a]++;

		

	}for ( i=1;i<=n;i++){

		if(nilai[i]>0){

			cout << "Yes" << endl;

		}else {

			cout << "No" << endl;

		}	

	}

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 5.448409198196585x):
#include<iostream>

#include<algorithm>

#include<string>

#include<cstring>

int a[100010];

using namespace std;

int main(){

	memset(a,0,sizeof a);

	int n,k,q,b;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++){

		cin>>b;

		a[b]++;

	}

	for(int i=1;i<=n;i++){

		if((q-a[i])>=k) cout<<"No"<<endl;

		else cout<<"Yes"<<endl;

	}

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 5.501523576625593x):
#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

const int maxn=1e5+100;

int main()

{

	int c[maxn],num[maxn],n,q,k,x;

	memset(num,0,sizeof num);

	scanf("%d%d%d",&n,&k,&q);

	for(int i=1;i<=q;i++)

	{

		scanf("%d",&x);

		num[x]++;

	}

	for(int i=1;i<=n;i++)

	{

		if(num[i]<=q-k) puts("No");

		else puts("Yes");

	}

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 4.245107065883829x):
#include<bits/stdc++.h>

#define maxn 100005

using namespace std;



int a[maxn],b[maxn];



int main(){

	int n,k,q;

	cin>>n>>k>>q;

	

	memset(a,0,sizeof(a));

	memset(b,0,sizeof(b));

	

	for(int i=1;i<=q;i++){

		int flag;

		cin>>flag;

		b[flag]++;

	}

	

	for(int i=1;i<=n;i++){

	

		a[i] = k-(q-b[i]);

		

		if(a[i]<=0)

		 cout<<"No"<<endl;

		else

		  cout<<"Yes"<<endl;

	}

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 5.483890717707105x):
#include<bits/stdc++.h>



using namespace std;

const int N =100010;

int b[N];

int vis[N];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	memset(vis,0,sizeof(vis));

	int id;

	for(int i=1;i<=q;i++) cin>>id,vis[id]++;

	for(int i=1;i<=n;i++) 

	{

		b[i]=k;

		b[i]=b[i]-(q-vis[i]);

		if(b[i]>=1)	puts("Yes");

		else puts("No");	

	}

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

#define maxn 100005

using namespace std;



int a[maxn],b[maxn];



int main(){

	int n,k,q;

	cin>>n>>k>>q;

	

	memset(a,0,sizeof(a));

	memset(b,0,sizeof(b));

	

	for(int i=1;i<=q;i++){

		int flag;

		cin>>flag;

		b[flag]++;

	}

	

	for(int i=1;i<=n;i++){

	

		a[i] = k-(q-b[i]);

		

		if(a[i]<=0)

		 cout<<"No"<<endl;

		else

		  cout<<"Yes"<<endl;

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.2918144660658544x):
#include<bits/stdc++.h>



using namespace std;

const int N =100010;

int b[N];

int vis[N];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	memset(vis,0,sizeof(vis));

	int id;

	for(int i=1;i<=q;i++) cin>>id,vis[id]++;

	for(int i=1;i<=n;i++) 

	{

		b[i]=k;

		b[i]=b[i]-(q-vis[i]);

		if(b[i]>=1)	puts("Yes");

		else puts("No");	

	}

	return 0;

}
// Slower C++ solution:
#include<stdio.h>

#include<string.h>

#include<iostream>

using namespace std;

int main()

{

    int n,k,q,x;

    int a[100002]={0};

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        scanf("%d",&x);

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(a[i]+k-q>0)

            printf("Yes\n");

        else

            printf("No\n");

    }

}


// Faster C++ solution for the same problem (measured speedup: 1.388922178462666x):
#include <bits/stdc++.h>

using namespace std;

const int N=100010;

int a[N],b[N];

map<int,int> mp; 

int main()

{

	int n,k,q;

	cin >>n>>k>>q;

	for(int i=1;i<=n;i++) a[i]=k,a[i]-=q; 

	for(int i=0;i<q;i++)

	{

		int x;

		cin >>x;

		mp[x]++;

	}

	for(int i=1;i<=n;i++) 

	{

		a[i]+=mp[i];

		if(a[i]<=0) printf("No\n");

		else printf("Yes\n");

	}

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 7.620446254316978x):
#include <bits/stdc++.h>

using namespace std;

const int N=100010;

int a[N],b[N];

map<int,int> mp; 

int main()

{

	int n,k,q;

	cin >>n>>k>>q;

	for(int i=1;i<=n;i++) a[i]=k,a[i]-=q; 

	for(int i=0;i<q;i++)

	{

		int x;

		cin >>x;

		mp[x]++;

	}

	for(int i=1;i<=n;i++) 

	{

		a[i]+=mp[i];

		if(a[i]<=0) printf("No\n");

		else printf("Yes\n");

	}

}
// Slower C++ solution:
#include<iostream>

#include<algorithm>

#include<string>

#include<cstring>

int a[100010];

using namespace std;

int main(){

	memset(a,0,sizeof a);

	int n,k,q,b;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++){

		cin>>b;

		a[b]++;

	}

	for(int i=1;i<=n;i++){

		if((q-a[i])>=k) cout<<"No"<<endl;

		else cout<<"Yes"<<endl;

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.3986552729628556x):
#include <bits/stdc++.h>

using namespace std;

const int N=100010;

int a[N],b[N];

map<int,int> mp; 

int main()

{

	int n,k,q;

	cin >>n>>k>>q;

	for(int i=1;i<=n;i++) a[i]=k,a[i]-=q; 

	for(int i=0;i<q;i++)

	{

		int x;

		cin >>x;

		mp[x]++;

	}

	for(int i=1;i<=n;i++) 

	{

		a[i]+=mp[i];

		if(a[i]<=0) printf("No\n");

		else printf("Yes\n");

	}

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

const int maxn=1e5+100;

int main()

{

	int c[maxn],num[maxn],n,q,k,x;

	memset(num,0,sizeof num);

	scanf("%d%d%d",&n,&k,&q);

	for(int i=1;i<=q;i++)

	{

		scanf("%d",&x);

		num[x]++;

	}

	for(int i=1;i<=n;i++)

	{

		if(num[i]<=q-k) puts("No");

		else puts("Yes");

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.3851519762078426x):
#include <bits/stdc++.h>

using namespace std;

const int N=100010;

int a[N],b[N];

map<int,int> mp; 

int main()

{

	int n,k,q;

	cin >>n>>k>>q;

	for(int i=1;i<=n;i++) a[i]=k,a[i]-=q; 

	for(int i=0;i<q;i++)

	{

		int x;

		cin >>x;

		mp[x]++;

	}

	for(int i=1;i<=n;i++) 

	{

		a[i]+=mp[i];

		if(a[i]<=0) printf("No\n");

		else printf("Yes\n");

	}

}
// Slower C++ solution:
#include<bits/stdc++.h>

#define maxn 100005

using namespace std;



int a[maxn],b[maxn];



int main(){

	int n,k,q;

	cin>>n>>k>>q;

	

	memset(a,0,sizeof(a));

	memset(b,0,sizeof(b));

	

	for(int i=1;i<=q;i++){

		int flag;

		cin>>flag;

		b[flag]++;

	}

	

	for(int i=1;i<=n;i++){

	

		a[i] = k-(q-b[i]);

		

		if(a[i]<=0)

		 cout<<"No"<<endl;

		else

		  cout<<"Yes"<<endl;

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.7951128525259952x):
#include <bits/stdc++.h>

using namespace std;

const int N=100010;

int a[N],b[N];

map<int,int> mp; 

int main()

{

	int n,k,q;

	cin >>n>>k>>q;

	for(int i=1;i<=n;i++) a[i]=k,a[i]-=q; 

	for(int i=0;i<q;i++)

	{

		int x;

		cin >>x;

		mp[x]++;

	}

	for(int i=1;i<=n;i++) 

	{

		a[i]+=mp[i];

		if(a[i]<=0) printf("No\n");

		else printf("Yes\n");

	}

}
// Slower C++ solution:
#include<bits/stdc++.h>



using namespace std;

const int N =100010;

int b[N];

int vis[N];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	memset(vis,0,sizeof(vis));

	int id;

	for(int i=1;i<=q;i++) cin>>id,vis[id]++;

	for(int i=1;i<=n;i++) 

	{

		b[i]=k;

		b[i]=b[i]-(q-vis[i]);

		if(b[i]>=1)	puts("Yes");

		else puts("No");	

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.389605782936389x):
#include <bits/stdc++.h>

using namespace std;

const int N=100010;

int a[N],b[N];

map<int,int> mp; 

int main()

{

	int n,k,q;

	cin >>n>>k>>q;

	for(int i=1;i<=n;i++) a[i]=k,a[i]-=q; 

	for(int i=0;i<q;i++)

	{

		int x;

		cin >>x;

		mp[x]++;

	}

	for(int i=1;i<=n;i++) 

	{

		a[i]+=mp[i];

		if(a[i]<=0) printf("No\n");

		else printf("Yes\n");

	}

}
// Slower C++ solution:
#include<stdio.h>

#include<string.h>

#include<iostream>

using namespace std;

int main()

{

    int n,k,q,x;

    int a[100002]={0};

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        scanf("%d",&x);

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(a[i]+k-q>0)

            printf("Yes\n");

        else

            printf("No\n");

    }

}


// Faster C++ solution for the same problem (measured speedup: 1.3930157332000193x):
#include<bits/stdc++.h>

using namespace std;

int a[123456];

int flag[123456];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++)

	{

		int t;

		cin>>t;

		a[t]++;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=k;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=flag[i]-q+a[i];	

		if(flag[i]<=0)

			cout<<"No"<<endl;

		else

			cout<<"Yes"<<endl;

	} 

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 7.642905909975752x):
#include<bits/stdc++.h>

using namespace std;

int a[123456];

int flag[123456];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++)

	{

		int t;

		cin>>t;

		a[t]++;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=k;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=flag[i]-q+a[i];	

		if(flag[i]<=0)

			cout<<"No"<<endl;

		else

			cout<<"Yes"<<endl;

	} 

	return 0;

}
// Slower C++ solution:
#include<iostream>

#include<algorithm>

#include<string>

#include<cstring>

int a[100010];

using namespace std;

int main(){

	memset(a,0,sizeof a);

	int n,k,q,b;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++){

		cin>>b;

		a[b]++;

	}

	for(int i=1;i<=n;i++){

		if((q-a[i])>=k) cout<<"No"<<endl;

		else cout<<"Yes"<<endl;

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.4027775139403154x):
#include<bits/stdc++.h>

using namespace std;

int a[123456];

int flag[123456];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++)

	{

		int t;

		cin>>t;

		a[t]++;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=k;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=flag[i]-q+a[i];	

		if(flag[i]<=0)

			cout<<"No"<<endl;

		else

			cout<<"Yes"<<endl;

	} 

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

const int maxn=1e5+100;

int main()

{

	int c[maxn],num[maxn],n,q,k,x;

	memset(num,0,sizeof num);

	scanf("%d%d%d",&n,&k,&q);

	for(int i=1;i<=q;i++)

	{

		scanf("%d",&x);

		num[x]++;

	}

	for(int i=1;i<=n;i++)

	{

		if(num[i]<=q-k) puts("No");

		else puts("Yes");

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.3892344190704342x):
#include<bits/stdc++.h>

using namespace std;

int a[123456];

int flag[123456];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++)

	{

		int t;

		cin>>t;

		a[t]++;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=k;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=flag[i]-q+a[i];	

		if(flag[i]<=0)

			cout<<"No"<<endl;

		else

			cout<<"Yes"<<endl;

	} 

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

#define maxn 100005

using namespace std;



int a[maxn],b[maxn];



int main(){

	int n,k,q;

	cin>>n>>k>>q;

	

	memset(a,0,sizeof(a));

	memset(b,0,sizeof(b));

	

	for(int i=1;i<=q;i++){

		int flag;

		cin>>flag;

		b[flag]++;

	}

	

	for(int i=1;i<=n;i++){

	

		a[i] = k-(q-b[i]);

		

		if(a[i]<=0)

		 cout<<"No"<<endl;

		else

		  cout<<"Yes"<<endl;

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.8004035684750164x):
#include<bits/stdc++.h>

using namespace std;

int a[123456];

int flag[123456];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++)

	{

		int t;

		cin>>t;

		a[t]++;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=k;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=flag[i]-q+a[i];	

		if(flag[i]<=0)

			cout<<"No"<<endl;

		else

			cout<<"Yes"<<endl;

	} 

	return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>



using namespace std;

const int N =100010;

int b[N];

int vis[N];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	memset(vis,0,sizeof(vis));

	int id;

	for(int i=1;i<=q;i++) cin>>id,vis[id]++;

	for(int i=1;i<=n;i++) 

	{

		b[i]=k;

		b[i]=b[i]-(q-vis[i]);

		if(b[i]>=1)	puts("Yes");

		else puts("No");	

	}

	return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.3937013524535302x):
#include<bits/stdc++.h>

using namespace std;

int a[123456];

int flag[123456];

int main()

{

	int n,k,q;

	cin>>n>>k>>q;

	for(int i=0;i<q;i++)

	{

		int t;

		cin>>t;

		a[t]++;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=k;

	}

	for(int i=1;i<=n;i++)

	{

		flag[i]=flag[i]-q+a[i];	

		if(flag[i]<=0)

			cout<<"No"<<endl;

		else

			cout<<"Yes"<<endl;

	} 

	return 0;

}
// Slower C++ solution:
#include<stdio.h>

#include<string.h>

#include<iostream>

using namespace std;

int main()

{

    int n,k,q,x;

    int a[100002]={0};

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        scanf("%d",&x);

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(a[i]+k-q>0)

            printf("Yes\n");

        else

            printf("No\n");

    }

}


// Faster C++ solution for the same problem (measured speedup: 1.3805450307203162x):
#include <bits/stdc++.h>



using namespace std;

const int N=3e5+5;

int a[N];

int main()

{

    ios_base::sync_with_stdio(0);

    cin.tie(0);cout.tie(0);

    int n,k,q;

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        int x;

        cin>>x;

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(k-q+a[i]>0) cout<<"Yes"<<'\n';

        else cout<<"No"<<'\n';

    }

    return 0;

}
// Slower C++ solution:
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int maxn=200000+100;



ll n,m,q,t[maxn<<2],x,y,z;

/*

ll low(ll x){

	return x&(-x);

}

ll query(ll x){

	ll res=0;

	for(;x>0;x-=low(x))res+=t[x];

	return res;

}

void updata(ll x,ll k){

	for(;x<=n;x+=low(x))t[x]+=k;

}*/



int main(){

	scanf("%lld%lld%lld",&n,&m,&q);

	memset(t,0,sizeof(t));

	for(int i=0;i<q;i++){

		scanf("%lld",&x);

		t[x]++;

	}

	for(int i=1;i<=n;i++){

		int k=t[i]+m-q;

		if(k<=0)printf("No\n");

		else printf("Yes\n");

	}

}

// Faster C++ solution for the same problem (measured speedup: 7.574484280978985x):
#include <bits/stdc++.h>



using namespace std;

const int N=3e5+5;

int a[N];

int main()

{

    ios_base::sync_with_stdio(0);

    cin.tie(0);cout.tie(0);

    int n,k,q;

    cin>>n>>k>>q;

    for(int i=0;i<q;i++)

    {

        int x;

        cin>>x;

        a[x]++;

    }

    for(int i=1;i<=n;i++)

    {

        if(k-q+a[i]>0) cout<<"Yes"<<'\n';

        else cout<<"No"<<'\n';

    }

    return 0;

}