提交时间:2024-01-23 11:10:02

运行 ID: 124185

#include<iostream> using namespace std; int l[2<<15],r[2<<15]; int n,x,root; void insert(int x,int now){ if(x>=now){ if(r[now]==0){ r[now] = x; return ; } insert(x,r[now]); } else{ if(l[now]==0){ l[now] = x; return ; } insert(x,l[now]); } } void pre_out(int node){ printf("%d ",node); if(l[node]){ pre_out(l[node]); } if(r[node]){ pre_out(r[node]); } } int main(){ cin >> n >> root; for(int i =2;i <= n;i++){ scanf("%d",&x); insert(x,root); } pre_out(root); return 0; }