2001普及组-求先序排列
#include <stdio.h>
#include <string.h>
char in[10],post[10];
void pre(char *s1,char *s2)
{
char *p,s3[10],s4[10];
int k,len,i;
len=strlen(s1);
if(len==0)
return;
printf("%c",s2[len-1]);
p=strchr(s1,s2[len-1]);
k=p-s1;
for(i=0;i<k;i++)
s3[i]=s1[i];
s3[i]='\0';
for(i=0;i<k;i++)
s4[i]=s2[i];
s4[i]='\0';
pre(s3,s4);
for(i=0;i<len-k-1;i++)
{
s3[i]=s1[k+1+i];
}
s3[i]='\0';
for(i=0;i<len-k-1;i++)
s4[i]=s2[k+i];
s4[i]='\0';
pre(s3,s4);
}
int main()
{
int len;
scanf("%s%s",in,post);
pre(in,post);
return 0;
}