#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,m,k,l;
struct da{
int x;
string z;
};
map<string,da>q;
bool check(string a,string b){
int cnt1=0,cnt2=0;
while(a!=""){
cnt2=0;
string p=b;
while(p!=""){
if(a==p&&(cnt1<4||cnt2<4))return false;
if(cnt1>=4&&cnt2>=4)return true;
p=q[p].z;
cnt2++;
}
a=q[a].z;
cnt1++;
}
return true;
}
signed main(){
cin>>n;
while(n--){
string s,s1;
cin>>s>>s1;
if(s1.back()=='n')q[s]={0,s1.substr(0,s1.size()-4)};
else if(s1.back()=='r')q[s]={1,s1.substr(0,s1.size()-7)};
else if(s1.back()=='m')q[s].x=0;
else q[s].x=1;
}
cin>>m;
while(m--){
string s1,x1,s2,x2;
cin>>s1>>x1>>s2>>x2;
if(!q.count(s1)||!q.count(s2))cout<<"NA"<<endl;
else if(q[s1].x==q[s2].x)cout<<"Whatever"<<endl;
else if(check(s1,s2))cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
return 0;
}
10-06
1072
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交