백준 14444번 문제 [문제 설명] 알파벳 소문자로만 이루어진 문자열 S가 주어졌을 때, S의 부분 문자열 중에서 팰린드롬 이면서 길이가 가장 긴 것의 길이를 구하는 프로그램을 작성하시오. [처음 문제를 다뤘던 방법] 문제를 처음 봤을 때는 단순히 문자열의 길이만큼 for 문을 돌리면서 부분문자열과 하나씩 비교하면 해결되겠지 하는 생각이였지만... 문자열에 직접적인 처리를 하는 함수들은 생각보다 속도가 많이 느리다. [문제 풀이 관련 알고리즘 - Manacher's Algorithm] 가장 긴 팰린드롬을 찾는 강력한 알고리즘으로 알려져 있다고 한다. 알고리즘을 다른 블로그나 위키를 보고 이해하는 데 조금 오래 걸렸다. 수학적 표현으로만 되어 있을 뿐 그에 대한 설명은 부실(?!)하다는 느낌이 많이 들었기 때문이다. Manac.. 이전 1 다음