注意:
1.K种颜色必须全部用上。
2.邻接表NV^2非常稳。
#include<bits/stdc++.h>
using namespace std;
int re[501][501];
vector<int> ed[501];
int main(){
int V,E,K,N;
cin>>V>>E>>K;
int a,b,c;
for(int i=0;i<E;i++){
scanf("%d %d",&a,&b);
re[a][b]=1;
re[b][a]=1;
ed[a].push_back(b);
ed[b].push_back(a);
}
cin>>N;
int t[V+1];
for(int i=0;i<N;i++){
set<int>tt;
tt.clear();
for(int j=1;j<=V;j++){
scanf("%d",t+j);
tt.insert(t[j]);
}
if(tt.size()!=K){
cout<<"No"<<endl;
continue;
}
int yes=1;
for(int k=1;k<V;k++){
for(auto it=ed[k].begin();it!=ed[k].end();it++){
if(t[*it]==t[k]){
yes=0;
break;
}
}
}
if(yes)cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
return 0;
}