서로 다른 글자로 이루어진 단어가 주어질 때, 두 플레이어가 항상 올바른 다음 글자를 말하도록 반복해서 외워야 하는 가장 짧은 순환 문자열을 각각 구합니다.
보통5문자열수학시뮬레이션면접 대비아직 제출이 없습니다시간 제한1초메모리 제한128 MB환규와 태욱이는 둘이서 하는 간단한 놀이인 탕수육 게임을 한다. 규칙은 다음과 같다.
단어가 "탕수육"이면 게임은 탕, 수, 육, 탕, 수, 육, 탕, 수, 육, ... 순서로 이어진다. 먼저 시작한 사람은 첫 번째, 세 번째, 다섯 번째 글자를 맡으므로 실제로 말하는 것은 탕, 육, 수, 탕, 육, 수, ... 이다. 그래서 게임을 시작하기 전에 "탕육수"만 외워 두고 그 순서대로 계속 반복하면 상대가 무엇을 말하든 절대 틀리지 않는다.
"탕육"이나 "탕육수탕"을 외우면 외운 문자열을 처음부터 순서대로 반복해 말했을 때 자기 차례에 틀린 글자가 나와 게임에서 진다. "탕육수탕육수"를 외워도 틀리지는 않지만 "탕육수"만으로도 게임을 진행할 수 있으므로, 외워야 하는 문자열 중 가장 짧은 것을 답으로 본다. 나중에 시작한 사람도 마찬가지로 "수탕육"만 외운 뒤 그 순서대로 반복하면 절대 틀리지 않는다.
두 사람은 이번에는 한글 대신 알파벳으로 게임을 한다. 단어가 "ABC"이고 환규가 먼저 시작하면 환규는 "ACB"를, 태욱이는 "BAC"를 외우면 지지 않는다. 게임에 사용할 알파벳 문자열이 주어질 때, 두 사람이 각각 미리 외워야 하는 문자열 중 가장 짧은 것을 출력하는 프로그램을 작성하시오.
입력은 표준 입력으로 주어진다. 첫째 줄에 테스트 케이스의 개수를 나타내는 자연수 T가 주어진다. 각 테스트 케이스의 첫째 줄에 게임에 사용할 문자열이 주어진다. 문자열의 길이는 1 이상 26 이하이다. 문자열은 알파벳 대문자로만 이루어져 있으며 같은 알파벳을 두 번 이상 포함하지 않는다.
출력은 표준 출력을 사용한다. 각 테스트 케이스마다 두 줄을 입력 순서대로 출력한다. 첫째 줄에는 먼저 시작한 사람이 외워야 하는 문자열 중 가장 짧은 것을, 둘째 줄에는 나중에 시작한 사람이 외워야 하는 문자열 중 가장 짧은 것을 알파벳 대문자로 출력한다.