#include<cstdio>
#include<iostream>
#include<string>
using namespace std;
const int maxn=27;
int son[maxn];
void Initial()
{
for(int i=0;i<maxn;i++)
{
son[i]=0;
}
}
bool isparent(int x,int y,int & num)
{
if(son[x]==0)return false;
if(son[x]!=y)
return isparent(son[x],y,++num);
else
{
return true;
}
}
int main ()
{
int n,m;
while(scanf("%d%d",&n,&m)!=EOF)
{
getchar();
string str;
for(int i=0;i<n;i++)
{
getline(cin,str);
int x=str[0]-'A'+1;
int y=str[1]-'A'+1;
int z=str[2]-'A'+1;
son[y]=x;
son[z]=x;
}
for(int i=0;i<m;i++)
{
getline(cin,str);
int x=str[0]-'A'+1;
int y=str[1]-'A'+1;
int num=1;
int num2=1;
if(isparent(x,y,num))
{
if(num==1)
printf("parent\n");
else if(num==2)
printf("grandparent\n");
else
{
while(num-->2)
{
printf("great-");
}
printf("grandparent\n");
}
}
else if(isparent(y,x,num2))
{
if(num2==1)
printf("son\n");
else if(num2==2)
printf("grandson\n");
else
{
while(num2-->2)
{
printf("great-");
}
printf("grandson\n");
}
}else
{
printf("-\n");
}
}
}
return 0;
}
找出直系亲属--c++
猜你喜欢
转载自blog.csdn.net/baidu_37143827/article/details/104702749
今日推荐
周排行