这题用到了分治思想,后序遍历的存图方式是:左->右->根,所以反过来存图的话顺序应该是:根->右->左,然后进行一个存图即可
```#include<bits/stdc++.h>
using namespace std;
int a;
int numb[50];
int ans[50];
int la;
void mp(int x){
ans[x]=numb[la--];
if(2*x+1<=a)
mp(2*x+1);
if(2*x<=a)
mp(2*x);
}
int main(){
cin>>a;
la=a;
for(int i=1; i<=a; i++)
cin>>numb[i];
mp(1);
for(int i=1; i<=a; i++){
cout<<ans[i];
if(i<=a-1)
cout<<" ";
}
return 0;
}