回文拼接?小case拿下

#include <iostream>

#include <string>

using namespace std;

// 判断一个字符串是否是回文

bool ishui(const string& a) {

int n = a.length();

for (int i = 0, j = n - 1; i < j; i++, j--) {

if (a[i] != a[j]) return false;

}

return true;

}

int main() {

int n;

string a;

cin >> n;

while (n--) {

cin >> a;

int l = a.length();

bool found = false;

for (int i = 2; i <=l - 2; i++) {

string left = a.substr(0, i);

string right = a.substr(i, l - i);

if (ishui(left) && ishui(right)) {

cout << "Yes" << endl;

found = true;

break;

}

}

if (!found) {

cout << "No" << endl;

}

}

return 0;

}

这里也运用到了调用函数,所以,将每个知识点,每个函数用法融汇贯通,能够熟练使用这些才是真理!!还有每天勤加练习才是真,不让手生,也能让自己的思维更加灵活,跳脱,并且更加熟练与题型。

全部评论

相关推荐

评论
1
收藏
分享
牛客网
牛客企业服务