1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
| #include <cstdio> #include <iostream> #include <cstring> #include <algorithm>
using namespace std;
char s1[110]; char s2[110]; char s3[110]; char s12[220]; char s21[220];
int main() { int n,t; scanf("%d",&t); for(int k = 1; k <= t ; k++) { scanf("%d",&n); getchar(); scanf("%s",s1); getchar(); scanf("%s",s2); getchar(); scanf("%s",s12);
strcpy(s3,s1); int cnt = 0; int is_find = 0; while(1) { cnt++;
if(cnt > 1 && strcmp(s1,s3) == 0){ break; }
for(int i = 0 ; i < n*2 ; i++) { if(i%2 == 0) { s21[i] = s2[i/2]; } else { s21[i] = s1[i/2]; } } s21[n*2] = '\0';
int flag = 1;
if(strcmp(s21,s12) == 0){ ; } else flag = 0;
if(flag == 1){ is_find = 1; break; }
for(int i = 0 ; i < n*2 ; i++) { if(i < n) { s1[i] = s21[i]; } else s2[i-n] = s21[i]; } s1[n] = '\0'; s2[n] = '\0'; }
if(is_find) { printf("%d %d\n",k,cnt); } else { printf("%d -1\n",k); }
} return 0; }
|
Author:
Qin Peng
License:
Copyright (c) 2020 BY QPWLKQ LICENSE
Slogan:
每一个不曾起舞的日子, 都是对生命的辜负