首页 > 代码库 > 模拟/poj 3087 Shuffle'm Up
模拟/poj 3087 Shuffle'm Up
1 #include<cstdio> 2 #include<cstring> 3 using namespace std; 4 char s1[110],s2[110],ss[220]; 5 int len,n; 6 7 int f() 8 { 9 int ans=0;10 char t1[110],t2[110],tt[220];11 strcpy(t1,s1);strcpy(t2,s2);12 while (1)13 {14 ans++;15 for (int i=0;i<len;i++)16 {17 tt[i*2]=t2[i];18 tt[i*2+1]=t1[i];19 }20 tt[2*len]=‘\0‘;21 if (strcmp(tt,ss)==0) return ans;22 for (int i=0;i<len;i++)23 {24 t1[i]=tt[i];25 t2[i]=tt[i+len];26 }27 t1[len]=‘\0‘;28 t2[len]=‘\0‘;29 if (strcmp(t1,s1)==0 && strcmp(t2,s2)==0) break;30 }31 return -1;32 }33 34 int main()35 {36 scanf("%d",&n);37 for (int t=1;t<=n;t++)38 {39 scanf("%d %s %s %s",&len,s1,s2,ss);40 printf("%d %d\n",t,f());41 }42 return 0;43 }
模拟/poj 3087 Shuffle'm Up
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。