社区讨论

20分求助!!!!!!!!!!

P1305新二叉树参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@loccja63
此快照首次捕获于
2023/10/30 11:34
2 年前
此快照最后确认于
2023/11/04 23:16
2 年前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
const int N=29;
struct node
{
	int l;
	int r;
}son[N];
int fa[N];
void dfs(int i)
{
	if(not i)return;
	cout<<(char)(i+'a'-1);
	dfs(son[i].l);
	dfs(son[i].r);
	
}
int main()
{
	int n;cin>>n;
	char p[3];
	for(int i=1;i<=n;i++)
	{
		cin>>p;
		if(p[1]!='*')
		{
			son[p[0]-'a'+1].l=p[1]-'a'+1;
			fa[p[1]-'a'+1]=p[0]-'a'+1;
		}
		
		if(p[2]!='*')
		{
			son[p[0]-'a'+1].r=p[2]-'a'+1;
			fa[p[2]-'a'+1]=p[0]-'a'+1;
		}
	}
	int i=0;
	while(++i)if(not fa[i])break;
	
	dfs(i);
	return 0;
 } 

回复

2 条回复,欢迎继续交流。

正在加载回复...