将多叉树转为二叉树:
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
struct list
{
int l;
int r;
}node[2001];
void init()
{
int i;
scanf("%d%d",&n,&m);
memset(vis,-1,sizeof(vis));
for(i=0;i<=n;i++)
{
node[i].l=node[i].r=0;
}
for(i=1;i<=n;i++)//边输入,边转化
{
int a,b;
scanf("%d%d",&a,&b);
node[b].r=node[a].l;
node[a].l=b;
}
}
int main()
{
init();
return 0;
}