牛客小白月赛31 H题 对称之美

思路分析: 其实这个题读完之后,理解并不难,只需要前一半的字符串中包含与之对称的字符串中的一个字母即可。 不过这个题,可以去看看C++中 find 函数的用法,还挺多的

AC代码:

#include <bits/stdc++.h>

#define ll long long
const int N = 200;
using namespace std;
string a[N];

int main() {
          
   
    ll t;
    ll n;
    cin >> t;
    for (int k = 0; k < t; k++) {
          
   
        scanf("%lld", &n);
        for (int j = 0; j < n; j++)
            cin >> a[j];
        if (n == 1) {
          
   
            printf("Yes
");
            continue;
        }
        bool flag = true;
        int i, j;
        for (i = 0; i < n / 2; i++) {
          
   
            for (j = 0; j < a[i].length(); j++) {
          
   
                if (a[n - i - 1].find(a[i][j]) != -1) {
          
   
                    break;
                }
            }
            if (j == a[i].length()) {
          
   
                flag = false;
                break;
            }
        }
        if (flag)
            printf("Yes
");
        else
            printf("No
");
    }
    return 0;
}
经验分享 程序员 微信小程序 职场和发展