问题描述
- FZU 2057 E 代码对给出的数据正确 递交为wa 求解
-
foj
我的代码
#include
#include
int fa[10000+10],ma[10000+10],ch[10000+10],n;
void slove(int x,int y)
{
int t,zd,k=0,flag=0,i,var=0;
char z[10000+5];
if(x
{
t=x; x=y; y=t;
var=1;
}
while(x>y)
{
zd=ch[x];if(x==fa[zd]) { z[k]='F'; k++;} else if( x==ma[zd]) { z[k]='M'; k++;} if(zd==y) {flag=1; break; } x=zd; } if(flag==0) { printf("Relativen");} else { printf("%d ",var); for(i=k-1;i>=0;i--) printf("%c",z[i]); printf("n"); }
}
int main()
{
int m,t,i,j,a,b,c,x,y;
scanf("%d",&t);
while(t!=0)
{
t--;
scanf("%d",&n);
memset(fa,0,sizeof(fa));
memset(ma,0,sizeof(ma));
memset(ch,0,sizeof(ch));
for(i=0;i<n/2;i++)
{
scanf("%d%d%d",&a,&b,&c);
ma[a]=c;
fa[a]=b;
ch[b]=a;
ch[c]=a;
}scanf("%d",&m); for(i=0;i<m;i++) { scanf("%d%d",&x,&y); slove(x,y); } } return 0;
}
时间: 2024-10-02 23:02:47