팰린드롬
면접 대비시간 제한1초메모리 제한256 MB
문자열이 주어질 때, 원하는 위치에 문자를 삽입해 팰린드롬으로 만들기 위해 필요한 최소 삽입 횟수를 구한다.
문제
팰린드롬(palindrome)은 앞에서부터 읽으나 뒤에서부터 읽으나 똑같은 대칭 문자열이다. 문자열이 하나 주어질 때, 문자를 몇 개 삽입하여 이 문자열을 팰린드롬으로 만들 수 있다. 삽입해야 하는 문자의 최소 개수를 구하는 프로그램을 작성하여라.
예를 들어 문자열 "Ab3bd"는 문자 2개를 삽입하여 "dAb3bAd" 또는 "Adb3bdA"와 같은 팰린드롬으로 만들 수 있으며, 1개 이하의 문자를 삽입해서는 팰린드롬으로 만들 수 없다. 따라서 이 경우의 답은 2이다.
삽입하는 문자는 문자열의 어느 위치에든 넣을 수 있다.
입력
첫째 줄에 문자열의 길이 ()이 주어진다. 둘째 줄에 길이가 인 문자열이 주어진다. 문자열은 알파벳 대문자 'A'–'Z', 소문자 'a'–'z', 숫자 '0'–'9'로 이루어진다. 대문자와 소문자는 서로 다른 문자로 구분한다.
출력
첫째 줄에 팰린드롬으로 만들기 위해 삽입해야 하는 문자의 최소 개수를 출력한다.