Двойные неприятности
Элис Кэтрин Моррис и её сестра Ирэн Барбара часто обмениваются электронными письмами. Чтобы защитить свою переписку от перехвата, они шифруют сообщения в два этапа. Сначала удаляются все неалфавитные символы, и все буквы преобразуются в верхний регистр. Затем: 1) каждая буква заменяется на букву, находящуюся на s позиций дальше в алфавите (1 ≤ s ≤ 25) — это называется сдвигом на s; 2) результат первого шага делится на группы по m букв, и буквы в каждой группе переворачиваются (5 ≤ m ≤ 20). Если длина сообщения не кратна m, последние k (меньше m) букв также переворачиваются. Например, если s = 2 и m = 6, и открытый текст:
Meet me in St. Louis, Louis.
после удаления лишних символов и преобразования в верхний регистр становится:
MEETMEINSTLOUISLOUIS
Это называется модифицированным открытым текстом. Затем каждая буква сдвигается на 2 позиции (Y заменяется на A, а Z на B), получая промежуточный результат:
OGGVOGKPUVNQWKUNQWKU
Наконец, каждая группа из 6 букв переворачивается:
GOVGGOQNVUPKWQNUKWUK
Обратите внимание, что последние две буквы образуют последнюю перевернутую группу. Результат записывается в группы по 5 букв, и шифротекст будет:
GOVGG OQNVU PKWQN UKWUK
Однако, несложно определить значения s и m, если шифротекст перехвачен. Это становится ещё проще, если известна подсказка — слово из модифицированного открытого текста. В приведенном примере, LOUIS является подсказкой. Ваша задача — найти s и m, когда дан шифротекст и подсказка.
Входные данные
Входные данные состоят из нескольких задач. Первая строка содержит положительное целое число, указывающее количество задач. Для каждой задачи первая строка содержит целое число n (20 ≤ n ≤ 500), обозначающее количество символов в шифротексте. Следующие строки содержат шифротекст в верхнем регистре, в группах по 5 букв, разделённых пробелом. (Последняя группа может содержать менее 5 букв.) Каждая строка шифротекста содержит 10 групп, за исключением, возможно, последней строки. Следующая строка после шифротекста содержит подсказку — одно слово от 4 до 10 символов в верхнем регистре.
Выходные данные
Вывод должен содержать два целых числа, s и m, в одной строке, разделённых пробелом, указывающих ключ шифрования, который создаёт подсказку, где s — это сдвиг, а m — размер перевернутой группы. Если существует несколько решений, выберите то, у которого наименьшее s. Если несколько решений имеют одинаковое s, выберите то, у которого наименьшее m. Если такие s и m не найдены, выведите "Crib is not encrypted.".