#include <bits/stdc++.h>
using namespace std;
int a[10001];
bool z[10001];
bool dfs(int i){
if(z[i]||z[a[i]]){
return true;
}else if(a[i]==i){
return false;
}else{
return dfs(a[a[i]]);
}
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n,m,l,q;
cin>>n>>m>>l>>q;
for(int i=0;i<n+1;i++){
a[i]=i;
z[i]=false;
}
for(int i=0;i<m;i++){
int w,s;
cin>>w>>s;
a[s]=w;
}
for(int i=0;i<l;i++){
int w;
cin>>w;
z[w]=true;
}
for(int i=0;i<n+1;i++){
if(dfs(i)){
z[i]=true;
}
}
for(int i=0;i<q;i++){
int w;
cin>>w;
if(z[w]){
cout<<"TUIHUOOOOOO\n";
}else{
cout<<"YA~~\n";
}
}
}
#include
using namespace std;
int a[10001];
bool z[10001];
bool dfs(int i){
if(z[i]||z[a[i]]){
return true;
}else if(a[i]==i){
return false;
}else{
return dfs(a[a[i]]);
}
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n,m,l,q;
cin>>n>>m>>l>>q;
for(int i=0;i
a[i]=i;
z[i]=false;
}
for(int i=0;i
int w,s;
cin>>w>>s;
a[s]=w;
}
for(int i=0;i
int w;
cin>>w;
z[w]=true;
}
for(int i=0;i
發現錯誤了,已AC