Palindroom

시간 제한1초메모리 제한1024 MB

요약
대문자 N개로 이루어진 문자열이 주어질 때, 팰린드롬으로 만들기 위해 바꿔야 하는 최소 글자 수와 그때 사전순으로 가장 앞서는 팰린드롬을 구합니다.
난이도

쉬움10점 중 3점

유형
그리디, 투 포인터, 문자열
정답자
아직 제출이 없습니다

문제

Kevin sai informaatikaolümpiaadi eelvooru palindroomiülesande eest maksimumpunktid. Seda nähes andis õpetaja talle natuke raskema ülesande, milles uuritakse mitmesuguse pikkusega tekstilisi palindroome.

Sarnaselt arvujada juhtumiga nimetatakse teksti palindroomiks, kui see on sama eest tahapoole ja tagant ettepoole lugedes. Näiteks ABBA on palindroom (sest see on ka tagurpidi lugedes ABBA), aga ABCD ei ole (sest see on tagurpidi lugedes DCBA).

Kirjutada programm, mis leiab vähima võimaliku arvu täheasendustega viisi antud tekst palindroomiks muuta.

입력

Sisendi esimesel real on täisarv NN (1≤N≤3001 \le N \le 300).

Teisel real on NN suurest ladina tähest (A …\ldots Z) koosnev tekst.

출력

Väljundi esimesele reale väljastada täisarv KK, mis näitab, mitu tähte on minimaalselt vaja asendada, et sisendis antud tekstist saaks palindroom.

Teisele reale väljastada saadud palindroom. Kui minimaalse täheasenduste arvuga palindroome on mitu, väljastada neist (ladina tähestiku järgi) tähestikulises järjekorras esimene.

예제2

  1. 예제 1

    입력
    4
    ABBA
    
    예상 출력
    0
    ABBA
    
  2. 예제 2

    입력
    4
    ABCC
    
    예상 출력
    2
    ABBA