思路:直接模拟即可,不用搜索。关键在于记录状态,然后判重。
记录状态和判重用map搞一下即可。
#include<map> #include<cmath> #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; map<string,bool>vist; int main(int i,int k){ int test,c; int t=0; cin>>test; while(++t<=test){ cin>>c; char s1[201];char s2[201]; char s12[401]; cin>>s1>>s2>>s12; vist[s12]=true; int step=0; while(true){ char s[201];int ps=0; for(i=0;i<c;i++){ s[ps++]=s2[i]; s[ps++]=s1[i]; } s[ps]='