1 条题解

  • 0
    @ 2026-10-25 18:43:51

    思路

    中序与层序的根与区间划分,不可当作先序输入;字母结点唯一,保留大小写。

    参考程序(C++11)

    #include <bits/stdc++.h>
    using namespace std;
    string solve(string in,string level){if(in.empty())return "";char root=level[0];int p=in.find(root);string a=in.substr(0,p),b=in.substr(p+1),al,bl;for(char x:level){if(a.find(x)!=string::npos)al+=x;if(b.find(x)!=string::npos)bl+=x;}return string(1,root)+solve(a,al)+solve(b,bl);}int main(){string a,b;cin>>a>>b;cout<<solve(a,b)<<'\n';}
    
    • 1

    信息

    ID
    1400
    时间
    1000ms
    内存
    64MiB
    难度
    普及
    标签
    递交数
    1
    已通过
    1
    上传者