Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
99700 | 黄戈 | 已知后序、中序遍历序列求前序遍历序列 | C++ | 通过 | 100 | 0 MS | 252 KB | 473 | 2023-08-23 15:57:31 |
#include <iostream> #include <string> using namespace std; void dfs(string zhong, string hou) { int len = zhong.size(); if (len == 0) return ; char gen = hou[len-1]; cout << gen; int pos = zhong.find(gen); dfs(zhong.substr(0, pos), hou.substr(0, pos)); dfs(zhong.substr(pos + 1, len - pos - 1), hou.substr(pos, len - pos - 1)); } int main() { string zhong, hou; cin >>hou >> zhong; dfs(zhong, hou); return 0; }