首页 > 代码库 > 家谱树
家谱树
1 #include <algorithm> 2 #include <iostream> 3 #include <cstring> 4 #include <cstdio> 5 #include <queue> 6 #define maxn 10015 7 8 using namespace std; 9 10 int n,a,cnt,num,x;11 int du_chu[maxn],du_ru[maxn];12 int e[115][115];13 14 int main()15 {16 scanf("%d",&n);17 for(int i=1;i<=n;i++)18 {19 while((cin>>a)&&a!=0)20 {21 du_chu[i]++;22 du_ru[a]++;23 e[i][du_chu[i]]=a;24 }25 }26 queue<int>que;27 for(int i=1;i<=n;i++)28 if(du_ru[i]==0)29 que.push(i);30 while(!que.empty())31 {32 x=que.front();33 cout<<x<<" ";34 que.pop();35 for(int i=1;i<=du_chu[x];i++)36 {37 du_ru[e[x][i]]--;38 if(du_ru[e[x][i]]==0)39 que.push(e[x][i]);40 }41 42 }43 return 0;44 }45 /*46 547 048 4 5 1 049 1 050 5 3 051 3 052 */
家谱树
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。