【UVA】536 Tree Recovery(树型结构基础)
题目
分析
莫名A了
代码
#include <bits/stdc++.h>
using namespace std;
string s1,s2;
void build(int l1,int r1,int l2,int r2)
{
int root=l1,p=l2;
if(l1>r1) return;
while(s2[p]!=s1[root] && p<=r2) p++;
int cnt=p-l2;
build(l1+1,l1+cnt,l2,p-1);
build(l1+cnt+1,r1,p+1,r2);
printf("%c",s1[root]);
}
int main()
{
while(cin>>s1>>s2)
{
build(0,s1.length()-1,0,s2.length()-1);
puts("");
}
return 0;
}
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步