{"trustable":true,"sections":[{"title":"","value":{"format":"HTML","content":"Боб и Алиса начали использовать совершенно новую схему кодирования. Удивительно, что это не Публичная Криптосистема, а их кодирование и декодирование основано на секретных ключах. Они выбрали секретный ключ на своей последней встрече в Филадельфии 16 февраля 1996 года. Они выбрали в качестве секретного ключа последовательность из n различных целых чисел, a1; . . .; an, больших нуля и меньших или равных n. Кодирование основано на следующем принципе. Сообщение записывается под ключом, так что символы в сообщении и числа в ключе соответственно выравниваются. Символ в сообщении на позиции i записывается в закодированное сообщение на позиции ai, где ai - соответствующее число в ключе. Затем закодированное сообщение кодируется таким же образом. Этот процесс повторяется k раз. После k-го кодирования они обмениваются сообщением.\r\u003cbr\u003e\r\u003cbr\u003eДлина сообщения всегда меньше или равна n. Если сообщение короче n, то в конец сообщения добавляются пробелы, чтобы получить сообщение длиной n.\r\u003cbr\u003e\r\u003cbr\u003eПомогите Алисе и Бобу и напишите программу, которая считывает ключ, а затем последовательность пар, состоящих из k и сообщения, которое нужно закодировать k раз, и выводит список закодированных сообщений.\r\u003cbr\u003e"}},{"title":"Ввод","value":{"format":"HTML","content":"Входной файл состоит из нескольких блоков. Каждый блок содержит число 0 \u0026lt; n \u0026lt;\u003d 200 на первой строке. На следующей строке содержится последовательность из n чисел попарно различных и каждое больше нуля и меньше или равно n. Следующие строки содержат целое число k и одно сообщение из символов ASCII, разделенных одним пробелом. Строки заканчиваются символом конца строки, который не относится к сообщению. Блок завершается отдельной строкой с числом 0. После последнего блока следует отдельная строка с числом 0."}},{"title":"Вывод","value":{"format":"HTML","content":"Вывод разделен на блоки, соответствующие входным блокам. Каждый блок содержит закодированные входные сообщения в том же порядке, что и во входном файле. Каждое закодированное сообщение в выходном файле имеет длину n. После каждого блока идет одна пустая строка."}},{"title":"Пример","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e10\r\n4 5 3 7 2 8 1 6 10 9\r\n1 Hello Bob\r\n1995 CERC\r\n0\r\n0\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003eBolHeol b\r\nC RCE\r\n\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}