시간 제한 메모리 제한 제출 횟수 정답 횟수 (비율) 정답자 수
1.0 초 128 MB 24 1 (4%) 1
문제
알파벳 소문자로 이루어진 문자열이 주어진다. 부분문자열의 "등장값"을 부분문자열이 문자열에 등장하는 횟수에 부분문자열의 길이를 곱한 값이라고 하자. 주어진 문자열에 대해 팰린드롬이며 등장값이 가장 큰 부분문자열을 구하라.
입력
첫째 줄에 알파벳 소문자(a-z)로 이루어진 길이 1이상의 문자열이 주어진다.
출력
팰린드롬인 부분문자열의 등장값 중 가장 큰 값을 출력하라.
힌트
#### 예제 입력 1 ``` abacaba ``` #### 예제 출력 1 ``` 7 ``` #### 예제 입력 2 ``` www ``` #### 예제 출력 2 ``` 4 ``` #### 참고 - |s|는 문자열 s의 길이이다. - 문자열 $s_1s_2...s_{|s|}$의 부분문자열은 문자열 $s_is_{i+1}...s_j(1 ≤ i ≤ j ≤ |s|)$이다. 문자열 자기자신 역시 부분문자열이다. 팰린드롬은 왼쪽에서 오른쪽으로, 오른쪽에서 왼쪽으로 어느 방향으로 읽던 같은 문자열을 의미한다. - 첫번째 예제에서는 7개의 팰린드롬인 부분문자열 a, b, c, aba, aca, bacab, abacaba가 존재한다. ``` a는 4번 나타나므로 등장값은 4 x 1 = 4 b는 2번 나타나므로 등장값은 2 x 1 = 2 c는 1번 나타나므로 등장값은 1 x 1 = 1 aba는 2번 나타나므로 등장값은 2 x 3 = 6 aca는 1번 나타나므로 등장값은 1 x 3 = 3 bacab는 1번 나타나므로 등장값은 1 x 5 = 5 abacaba는 1번 나타나므로 등장값은 1 x 7 = 7 ``` 그러므로 이 중 가장 큰 등장값은 7이 된다. #### 점수 아래 5개의 서브태스크로 점수가 매겨진다. - 서브태스크 1 (8점) : $1 ≤ |s| ≤ 100$ - 서브태스크 2 (15점) : $1 ≤ |s| ≤ 1000$ - 서브태스크 3 (24점) : $1 ≤ |s| ≤ 10000$ - 서브태스크 4 (26점) : $1 ≤ |s| ≤ 100000$ - 서브태스크 5 (27점) : $1 ≤ |s| ≤ 300000$