Codeforces 라운드 # 620 (사업부. 2) 가장 긴 회문

보고서 문제 해결 :

아이디어 : 찾기 회문 문자열과 문자열 자체는 문자열을 회문 찾을 수 있습니다.

시뮬레이션 과정 :

4 2
oo
ox
xo
xx

그리고 그것은 회문 문자열 문자열을 구성 : 황소 XO

자체는 팔린 드롬 서열은 : 각종 xx는 (하나만 필요 스트링 사이에서 동일하지 않기 때문에)

답 : oxooxo 길이는 6입니다.

코드 :

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N = 100;
string ss[N];
bool check(string x, string y){
    ll len = x.size();
    for(ll i=0; i<len; ++i){
        if(x[i] != y[len-i-1])return 0;
    }
    return 1;
}
int main(){
    ll n, m;
    while(~scanf("%lld%lld", &n, &m)){
        for(ll i=0; i<n; ++i)
            cin >> ss[i];
        string x, invX, temp;
        for(ll i=0; i<n; ++i){
            for(ll j=i; j<n; ++j){
                if(check(ss[i], ss[j]) && i == j)temp = ss[i];
                if(check(ss[i], ss[j]) && i != j)x += ss[i];
            }
        }
        ll len = x.size();
        for(ll i=len-1; i>=0; --i)
            invX += x[i];
        x = x + temp + invX;
        cout << x.size() << endl << x << endl;
    }
    return 0;
}

 

게시 된 208 개 원래 기사 · 원 찬양 9 ·은 10000 +를 볼

추천

출처blog.csdn.net/jun_____/article/details/104424296