简单模拟题
CPP字符串截取函数,注意默认参数从左到右补全
string substr (size_t pos = 0, size_t len = npos) const;
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>
#include <queue>
#include <map>
#include <set>
using namespace std;
int testcase;
int main(){
// freopen("../in.txt", "r", stdin);
string str1, str2, str;
set<string> S;
cin>>testcase;
int cnt = 1;
while (testcase--){
int len;
cin>>len>>str1>>str2>>str;
// 开始模拟
int ix = 0;
while (true){
string temp;
for (int i = 0; i < str1.length(); ++i) {
temp.push_back(str2[i]);
temp.push_back(str1[i]);
}
ix++;
if (temp == str)
break;
if (S.find(temp)==S.end()) S.insert(temp);
else {
ix = -1;
break;
}
str1 = temp.substr(0, str2.length());
str2 = temp.substr(str2.length(), str2.length());
}
cout<<cnt<<" "<<ix<<endl;
cnt++;
S.clear();
}
}