题解 | #密码截取#
密码截取
https://www.nowcoder.com/practice/3cd4621963e8454594f00199f4536bb1
#include <iostream> #include <string> using namespace std; bool isSymmetry(string s) { auto len = s.length(); for (int i = 0; i < len / 2; i++) { if (s[i] != s[len - i - 1]) { return false; } } return true; } void Decode(string s) { auto len = s.length(); int maxlen = 0; if (len == 1) { cout << 1; return; } for (int i = 0; i < len; i++) { for (int j = i + 1; j < len; j++) { if (s[i] == s[j]) { string substr = s.substr(i, j - i + 1); bool ret = isSymmetry(substr); if (ret) { //cout << substr << endl; if (substr.length() > maxlen) { maxlen = substr.length(); } } } } } cout << maxlen << endl; } int main() { string s; while (cin >> s) { Decode(s); } } // 64 位输出请用 printf("%lld")