#include <stdio.h> #include <string.h> void run(char a[],char b[]) { int i,n,j; char c[33],d[33]; n=strlen(a)-1; if(n<=0) { printf("%s",a); return; } i=0; while(b[i]!=a[0]) i++; for(j=0;j<i;j++) { c[j]=a[j+1]; d[j]=b[j]; } c[i]=0; d[i]=0; run(c,d); for(j=0;j<n-i;j++) { c[j]=a[j+i+1]; d[j]=b[j+i+1]; } c[n-i]=0; d[n-i]=0; run(c,d); printf("%c",a[0]); } int main() { char a[33],b[33]; scanf("%s",a); while(strcmp(a,"")!=0) { scanf("%s",b); run(a,b); printf("\n"); strcpy(a,""); scanf("%s",a); } return 0; } /************************************************************** Problem: 2193 User: admin Language: C++ Result: Accepted Time:15 ms Memory:1144 kb ****************************************************************/