포닉스의 문단속
면접 대비시간 제한1초메모리 제한1024 MB
각 자리의 다이얼을 한 번에 한 칸씩 돌려 정확히 K번 돌린 뒤 만들 수 있는 사전순으로 가장 작은 문자열을 구합니다.
문제
포닉스의 집은 어디일까? 사람들은 포닉스의 집이 포스텍일 것이라 생각하지만, 사실 포닉스는 하늘 높이 있는 불사조 마을에 살고 있다. 불사조 마을은 외부인이 접근하기 어렵고, 불사조는 태생이 정의로운 생물이라 문단속을 잘 까먹곤 한다.
포닉스도 예외는 아니라서 매일 문을 잠그지 않은 채로 포스텍과 불사조 마을을 왕복하고 있었다. 그러던 어느 날, 포닉스가 집을 비운 사이 포스텍의 유명한 대도 Mr. K가 포닉스의 집에 자물쇠를 설치하고 말았다! 자물쇠는 개의 다이얼이 연결된 형태이며, 각 다이얼에는 A부터 Z까지의 알파벳 대문자가 차례대로 적혀 있다.
포닉스는 자물쇠를 풀기 위해 다이얼 중 하나를 골라 번 돌릴 수 있다. 이때 고른 다이얼에 표시된 문자가 A였다면 B로, B였다면 C로, ..., Z였다면 A로 바뀐다. 반대 방향으로는 돌릴 수 없다. 정보를 모은 결과, 포닉스는 이러한 작업을 정확히 번 해서 표시할 수 있는 문자열 중 사전 순으로 가장 작은 것이 자물쇠의 비밀번호라는 사실을 알아냈다. 포닉스가 집을 되찾을 수 있도록 자물쇠의 비밀번호를 알아내 보자.
입력
첫 번째 줄에 자물쇠의 길이 과 작업의 횟수 가 공백으로 구분되어 주어진다.
두 번째 줄에 현재 자물쇠에 표시된 길이가 인 문자열 가 주어진다. 는 알파벳 대문자로만 이루어져 있음이 보장된다.
출력
다이얼을 정확히 번 돌려 만들 수 있는 사전 순으로 가장 작은 문자열을 출력한다.
힌트
길이가 으로 같은 두 문자열 , 에 대해 가 보다 사전 순으로 작음은 다음 조건을 만족하는 정수 가 존재함을 의미한다.
- 모든 에 대해
- 이며 가 알파벳 순서에서 보다 먼저 등장한다.