R01377
팰린드롬 분할
레이팅
의견: 0
설명
알파벳 소문자로만 이루어진 길이 \(N\)의 문자열 \(S\)가 주어진다.
문자열을 몇 번 절단하여 각 부분이 모두 팰린드롬이 되도록 만들고 싶다. 절단은 두 인접한 문자 사이 어느 위치에서도 할 수 있으며, 한 번 절단할 때마다 절단 횟수가 \(1\) 증가한다.
절단 횟수의 최솟값을 구하여라.
팰린드롬이란 앞에서 읽어도 뒤에서 읽어도 같은 문자열을 말한다.
제약
- \(1 \le |S| \le 2\,000\)
- \(S\)는 알파벳 소문자만으로 이루어진다.
입력 형식
한 줄에 알파벳 소문자로 이루어진 문자열 \(S\)가 주어진다.
출력 형식
절단 횟수의 최솟값을 출력한다.
예제 1
입력
aab
출력
1
설명
"aab"는 "aa"와 "b"로 나누면 팰린드롬 \(2\)개이므로 절단 횟수는 \(1\)이다.
예제 2
입력
abacaba
출력
0
설명
"abacaba" 전체가 팰린드롬이므로 절단 없이 \(0\)이다.
문제 정보
riseoj 작성
출처 Original
태그
평가 및 의견
팰린드롬 분할
개별 의견
아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.
풀이 제출
팰린드롬 분할
게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다.
로그인하고 제출하기