社区讨论
新人求助,新二叉树那题,本机AC提交RE。
P1305新二叉树参与者 4已保存回复 20
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 20 条
- 当前快照
- 1 份
- 快照标识符
- @lod2m3pl
- 此快照首次捕获于
- 2023/10/30 23:44 2 年前
- 此快照最后确认于
- 2023/11/05 10:02 2 年前
非玩梗
RUN https://www.luogu.com.cn/record/40358312
以下是我的代码:
CPP#include<bits/stdc++.h>
#define N 30
int n,rt;
int ls[N],rs[N];
bool vis[N],son[N];
namespace WalkerV {
void Read() {
scanf("%d",&n);
for(int i=1;i<=n;i++) {
getchar();
int o,l,r;
char c,x,y;
c=getchar(),x=getchar(),y=getchar();
o=c-'a'+1;
//printf("%d",o);
vis[o]=true;
if(x!='*') {
l=x-'a'+1;
//printf("%d",l);
ls[o]=l;
son[l]=true;
}
if(y!='*') {
r=y-'a'+1;
//printf("%d",r);
rs[o]=r;
son[r]=true;
}
//printf("\n");
}
return;
}
void DFS(int o) {
printf("%c",o+'a'-1);
if(ls[o]) {
DFS(ls[o]);
}
if(rs[o]) {
DFS(rs[o]);
}
return;
}
void Solve() {
for(int i=1;i<=26;i++) {
if(vis[i]&&!son[i]) {
rt=i;
break;
}
}
//printf("rt:%d\n",rt);
DFS(rt);
return;
}
}
int main()
{
WalkerV::Read();
WalkerV::Solve();
return 0;
}
第一个数据点我下下来了,本机是对的,请大家帮帮忙!谢谢!
回复
共 20 条回复,欢迎继续交流。
正在加载回复...