OI初学者求助
查看原帖
OI初学者求助
335094
Lucifero楼主2020/10/23 19:32
#include <bits/stdc++.h>
using namespace std;
string first,middle,last;
void solve(int a1,int a2,int b1,int b2)
{
	if (a1>a2 || b1>b2) return;
	putchar(last[a2]);//输出后序
	int temp=middle.find(last[a2]);//枚举找根
	solve(b1,b1-a1+temp-1,a1,temp-1);//疑似左子树
	solve(b1-a1+temp,b2-1,temp+1,a2);//疑似右子树
}
int main()
{
	//求先序排列
	cin>>middle>>last;
	int l=last.length()-1;
	solve(0,l,0,l);
}
2020/10/23 19:32
加载中...