为什么这过不了 WA #25的92
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
int t, n;
bool Ans;
string s[N];
map<string, int> C;
signed main() {
cin >> t;
while (t--) {
Ans = false;
C.clear();
cin >> n;
for (int i = 1; i <= n; i++) cin >> s[i], C[s[i]] = i;
for (int i = 1; i <= n; i++) {
string *x = &s[i];
if((*x).size() == 1) {Ans = true;break;}
else if((*x).size() == 2) {
string s = {(*x)[1], (*x)[0]};
if(C[s]) {Ans = true; break;}
} else if((*x).size() == 3) {
if((*x)[0] == (*x)[2]) {Ans = true;break;}
string s = {(*x)[2], (*x)[1], (*x)[0]};
if(C[s]) {Ans = true;break;}
// 012
// 21 012
// 012 10
s = {(*x)[2], (*x)[1]};
if(C[s] && C[s] < i) {Ans = true;break;}
s = {(*x)[1], (*x)[0]};
if(C[s] && C[s] > i) {Ans = true;break;}
}
}
if(Ans) puts("YES");
else puts("NO");
}
}