[python] 백준 1509 팰린드롬 분할
https://www.acmicpc.net/problem/1509 1509번: 팰린드롬 분할 세준이는 어떤 문자열을 팰린드롬으로 분할하려고 한다. 예를 들어, ABACABA를 팰린드롬으로 분할하면, {A, B, A, C, A, B, A}, {A, BACAB, A}, {ABA, C, ABA}, {ABACABA}등이 있다. 분할의 개수의 최솟값을 출력하 www.acmicpc.net 문제 해결 팰린드롬은 좌우 대칭인 문자열을 의미한다 문자를 하나씩 나누면 무조건 팰린드롬 분할이 된다. 두 개씩 보면서 팰린드롬을 확인하는 것도 어렵지 않다. $O(N)$ 3개 이상일 때는 어떻게 할 수 있을지 어려웠다. 길이를 3부터 L까지 늘려나가면서 $l$ 확인한다. 시작점을 0부터 $L-l$까지 이동하며 잡고 끝점을 시작점..
2024. 2. 25.