//cpp 使用结构体和vector来存储一棵树
#include <cstdio>
#include <cstdlib>
#include <vector>
using namespace std;
struct node
{
vector <int> son;
};
struct node e[1001];
int father[1001];
int main()
{
int i,n,t1,t2;
scanf("%d",&n);//n个顶点
for(i=1;i<=n-1;i++)//n-1条边
{
scanf("%d %d",&t1,&t2);//t1是t2的爸爸
e[t1].son.push_back(t2); //存储每个顶点有哪些儿子
father[t2]=t1;//存储每个顶点的爸爸是谁
}
for(i=1;i<=n;i++)
{
printf("%d - ",i);
vector <int> :: iterator it;
for(it=e[i].son.begin(); it!=e[i].son.end(); it++)
{
printf("%d ",*it);
}
printf("\n");
}
return 0;
}
/*
9
3 5
3 6
1 2
1 3
1 4
6 7
6 8
6 9
*/
|