最長迴文

LeetCode 647 - Longest Palindromic Substring (簡易版)

題意

迴文是啥???

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ABCBA

ABBA

YAYA

AWA

POOPP

OUO

ADAMCA

ADAMCA

AOAAOO

AOAAOO

MADAM

MADAM

範例測資

解題思路

程式碼

#include <iostream>
#include <string>
#include <algorithm>
 
using namespace std;
 
void sol() {
    string s;
    cin >> s;
    int ans = 0;
    for (int l = 0; l < s.size(); l++) {
        for (int r = l; r < s.size(); r++) {
            int len = r - l + 1;
            string t = s.substr(l, len);
            string t2 = t;
            reverse(t2.begin(), t2.end());
            if (t == t2) {
                ans = max(len, ans);
            }
        }
    }
    cout << ans << endl;
}

int main() {
	int t;
	cin >> t;
	while (t--) sol();
}
Made with Slides.com