北邮oj 进程管理网研 14

xiaoxiao2021-02-28  18

#include<stdio.h> #include<string.h> int flag[101]; void solve(int x) { flag[x]=-1; for(int i=0;i<101;i++) { if(flag[i]==x) solve(i); } } main() { int t,n,a,b; char s[10]; scanf("%d",&t); while(t--) { memset(flag,-1,sizeof(flag)); flag[0]=0; scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%s",s); if(s[0]=='F') { scanf("%d %d",&a,&b); flag[b]=a; } else if(s[0]=='Q') { scanf("%d",&a); if(flag[a]>=0) printf("Yes\n"); else printf("No\n"); } else if(s[0]=='K') { scanf("%d",&a); flag[a]=-1; for(int i=1;i<101;i++) if(flag[i]==a) solve(i);//递归关闭进程 } } } }
转载请注明原文地址: https://www.6miu.com/read-1700379.html

最新回复(0)