#include<stdio.h>
int main(){
int a,e,n=0,m;
scanf("%d ",&a);
char b[a],c[a],d[a];
for(;n<a;n++){
scanf("%c ",&b[n]);
scanf("%c ",&c[n]);
scanf("%c ",&d[n]);
}
scanf("%d ",&e);
if(a!=e){
printf("No");
return 0;
}
char f[a],g[a],h[a];
for(n=0;n<a;n++){
if(c[n]>45){
c[n]=b[c[n]-48];
}
if(d[n]>45){
d[n]=b[d[n]-48];
}
scanf("%c ",&f[n]);
scanf("%c ",&g[n]);
scanf("%c ",&h[n]);
}
for(n=0;n<a;n++){
for(m=0;m<a;m++){
if(b[n]==f[m])break;
}
if(m==a)break;
if(g[m]>45){
e=f[g[m]-48];
if(e==c[n]){
e=d[n];
}else if(e==d[n]){
e=c[n];
}else break;
}else{
if(c[n]==45){
e=d[n];
}else if(d[n]==45){
e=c[n];
}else break;
}
if(h[m]>45){
h[m]=f[h[m]-48];
}
if(e!=h[m])break;
}
if(n<a){
printf("No");
}else{
printf("Yes");
}
}
7-3 树的同构
最新推荐文章于 2022-11-16 10:48:06 发布