ปัญหา
ได้รับสตริงตัวพิมพ์เล็ก ตรวจสอบว่ามีสับสตริงที่เป็นพาลินโดรมและมีความยาวเป็นเลขคู่หรือไม่
ข้อสังเกตสำคัญ
พาลินโดรมยาวคู่ที่สั้นที่สุดคือความยาว 2 → ต้องมีตัวอักษรซ้ำกันติดกัน (เช่น "aa", "bb")
ดังนั้น ตรวจสอบเพียงว่า มี s[i] == s[i+1] หรือไม่
โปรแกรมตัวอย่าง
#include <bits/stdc++.h>
using namespace std;
bool hasEvenPalindrome(string s) {
for (int i = 0; i < (int)s.length() - 1; i++)
if (s[i] == s[i + 1]) return true;
return false;
}
int main() {
cout << hasEvenPalindrome("afternoon"); // 1 (มี "oo")
return 0;
}