여전히 부끄러운 암호학자
시간 제한1초메모리 제한256 MB
알 수 없는 치환 암호로 만든 평문과 암호문이 주어질 때 암호문을 반복 암호화해 평문으로 되돌리는 횟수를 구하고 결과가 하나로 정해지지 않으면 mjau를 출력합니다.
문제
암호학자 뵈르게가 회사에서 쓸 새 보안 모듈을 만든다. 지난번 모듈은 코드를 아무도 이해하지 못해 문제가 많았기 때문에, 이번에는 훨씬 단순하게 만들라는 지시를 받았다.
비밀키 는 알파벳 대문자 26자를 대문자 26자로 보내는 일대일 대응이다. 문자열 의 암호문은 이고, 복호화 키 은 를 만족한다.
이 방식에는 약점이 있다. 어떤 에 대해 가 성립하므로, 공격자는 암호문에 를 계속 적용하기만 해도 원문을 얻는다. 가 작으면 위험하니 뵈르게는 먼저 를 알아야 한다.
원문 와 그에 대응하는 암호문 가 주어진다. 는 에 를 번 더 적용했을 때 가 되는 가장 작은 음이 아닌 정수다.
와 는 에 등장하는 문자에서만 의 값을 알려주고, 나머지 문자의 상은 알 수 없다. 와 에 어긋나지 않는 키 가 모두 같은 를 준다면 그 값을 출력하고, 키에 따라 가 달라진다면 mjau를 출력한다.
입력
첫 줄에 테스트 케이스의 수 이 주어진다 (). 각 테스트 케이스는 두 줄이고, 첫 줄에 원문 , 둘째 줄에 암호문 가 주어진다. 를 만족하는 키가 적어도 하나 존재한다. 두 문자열은 'A'부터 'Z'까지의 대문자로만 이루어지며 이다. 암호화 함수 는 테스트 케이스마다 다르다.
출력
각 테스트 케이스마다 한 줄에 를 출력한다. 와 만으로 를 정할 수 없으면 mjau를 출력한다.