题解 内存超小
2023-08-10 16:57:29
发布于:浙江
43阅读
0回复
0点赞
#include<bits/stdc++.h>
//#include<iostream>
//#include<cstring>
using namespace std;
char s1[15],s2[15];
// 中序 后序
void foo(int l1,int r1,int l2,int r2)
{
if(l1>r1||l2>r2)
return ;
int i;
for(i=l1;i<=r1;i++)
if(s1[i]==s2[r2])
break;
cout<<s2[r2];
foo(l1,i-1,l2,l2-l1+i-1); // 左子数
foo(i+1,r1,l2-l1+i,r2-1); // 右子树
}
int main()
{
cin>>s1>>s2;
int len=strlen(s1);
foo(0,len-1,0,len-1);
return 0;
}
无注释版
#include<bits/stdc++.h>
using namespace std;
char s1[15],s2[15];
void foo(int l1,int r1,int l2,int r2)
{
if(l1>r1||l2>r2)
return ;
int i;
for(i=l1;i<=r1;i++)
if(s1[i]==s2[r2])
break;
cout<<s2[r2];
foo(l1,i-1,l2,l2-l1+i-1);
foo(i+1,r1,l2-l1+i,r2-1);
}
int main()
{
cin>>s1>>s2;
int len=strlen(s1);
foo(0,len-1,0,len-1);
return 0;
}
这里空空如也
有帮助,赞一个