理论正确就是真正的正确,误。。。

就是找嘛,找到每一个对应字符,然后对应的左右子树的区间,然后就可以了。

#include <bits/stdc++.h>
using namespace std; char mid[100];
char suff[100]; void getpre(int ml,int mr,int sl,int sr)
{
// printf("%d %d %d %d\n",ml,mr,sl,sr);
if (ml>mr) {
return ;
}
if (ml==mr) {
printf("%c",mid[ml]);
return ;
} char root=suff[sr];
printf("%c",root);
int i;
for (i=ml;i<=mr;i++) {
if (root==mid[i]) break;
}
char rs=(i+1)>mr?'#':mid[i+1];
int j;
for (j=sl;j<=sr;j++) {
if (rs==suff[j]) break;
}
j=(j>sr)?sr:j;
getpre(ml,i-1,sl,j-1);
getpre(i+1,mr,j,sr-1);
} int main()
{
scanf("%s",mid);
scanf("%s",suff);
int len=strlen(mid);
getpre(0,len-1,0,len-1);
return 0;
}
/*
BADCE
BDECA
*/

最新文章

  1. 使用JAVA编写电话薄程序,具备添加,查找,删除等功能
  2. VBA用户控件
  3. Spring AOP 四大通知
  4. 解决Linux性能问题的前60秒
  5. 区间dp笔记√
  6. 解决浏览器background-image属性不支持css3动画
  7. VoltDB公布4.0版本号,大步提高内存实时分析速度,进军操作数据库市场
  8. 可编辑tab选项卡
  9. 从一个PHP数据生成 CSV 文件
  10. POJ 1472 Coins (多重背包+滚动数组)
  11. 由于检索用户的本地应用程序数据路径时出错,导致无法生成 SQL Server 的用户实例
  12. fiddler2 中文乱码问题
  13. P1197 [JSOI2008]星球大战
  14. 多态以及 LeetCode 每日一题
  15. day 15 模块、起别名、from导入
  16. java程序中的乱码方案
  17. P1440 求m区间内的最小值--洛谷luogu
  18. 【移动端 Web】怎么循序渐进地开发一个移动端页面
  19. vue实现双向绑定的简单原理: defineProperty
  20. sql语句——行列互换

热门文章

  1. 迭代器iterator遍历map集合
  2. C# 元组和值元组
  3. C#获取当前不同网卡对应的iP
  4. 接口自动化框架(Pytest,Allure,Yaml)
  5. tp5.0和tp3.2的区别
  6. 管理QT的组件
  7. hyper-v 80070057
  8. OpenCV的视频读取
  9. docker映射
  10. Axure 8.1.0.3377 激活码 授权码 (亲测有效)