만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

가장 긴 팰린드롬 부분 문자열

시간 제한0.5초메모리 제한512 MB

요약
문자열 S에서 앞뒤가 같은 가장 긴 연속 부분 문자열의 길이를 구한다.
난이도

보통10점 중 7점

유형
문자열, 이분 탐색, 해시맵
정답자
아직 제출이 없습니다

문제

팰린드롬은 앞에서 읽은 결과와 뒤에서 읽은 결과가 같은 문자열이다. 예를 들어 a, aa, aba는 팰린드롬이고 ab는 팰린드롬이 아니다.

문자열 SS가 주어질 때, SS의 부분 문자열 중에서 팰린드롬인 것 가운데 가장 긴 것의 길이를 구하는 프로그램을 작성하시오. 여기서 부분 문자열은 SS에서 연속한 구간을 잘라낸 문자열을 뜻한다.

입력

첫째 줄에 문자열 SS가 주어진다. SS는 알파벳 소문자로만 이루어져 있으며, 길이는 1 이상 100,000 이하이다.

출력

첫째 줄에 가장 긴 팰린드롬 부분 문자열의 길이를 출력한다.

예제5

  1. 예제 1

    입력
    abcd
    
    예상 출력
    1
    
  2. 예제 2

    입력
    abab
    
    예상 출력
    3
    
  3. 예제 3

    입력
    dcabccd
    
    예상 출력
    2
    
  4. 예제 4

    입력
    abcba
    
    예상 출력
    5
    
  5. 예제 5

    입력
    aaaaa
    
    예상 출력
    5