标签:
ACBFGED ABCDEFG CDAB CBAD
DBACEGF BCAD
#include <iostream> #include <cstdio> #include <cstring> using namespace std; char subs[30]; char tmp[30]; char in[30]; int t[30]={0}; void traverse(int s1,int s2,int n){ if(n==1){ printf("%c",tmp[s1]); return ; } if(n<=0){ return ; } t[s1]=1; int i; for(i=0;tmp[s1]!=in[s2+i];i++); printf("%c",tmp[s1]); traverse(s1+(n-i),s2,i);//第一个参数应该是s1+(n-i) traverse(s1+1,s2+i+1,n-i-1); } int main() { while(scanf("%s %s",subs+1,in+1)!=EOF){ memset(t,0,sizeof(t)); int cou=1; int len=strlen(subs+1); for(int i=len;i>0;i--){ tmp[cou++]=subs[i]; } traverse(1,1,len); printf("\n"); } return 0; }
标签:
原文地址:http://www.cnblogs.com/TWS-YIFEI/p/5826731.html