Задача №1149. Процедура writef

Фирма Macrohard разработала новый язык программирования: P--. В этом языке имеется K типов целых чисел – int, longint, longlongint, …, longlonglongint (K-1 раз long). Числа этих типов могут принимать значения в диапазонах 0..M0, 0..M1, …, 0..MK-1 соответственно.

Также, в этом языке имеется процедура вывода writef, которая имеет неограниченное количество параметров. В качестве первого параметра она получает строку, а в качестве второго и последующих может получать числа любого из поддерживаемых типов. При этом вывод осуществляется следующим способом: выводится строка, переданная первым параметром, в которой произведена подстановка параметров, а именно, вместо %i подставляется число типа int, вместо %li – число типа longint, вместо %llli (букв l) – число типа longlonglongint (j раз long). Вывод числа осуществляется в системе счисления с основанием B (2 B 36).

Цифрами в системе счисления с основанием B являются обычные десятичные цифры и, если их недостаточно, заглавные буквы латинского алфавита в алфавитном порядке. Например, 10010=4С22, 126010=Z036.

При этом тип передаваемых параметров должен совпадать с соответствующими шаблонами. Например, если M0=300, M1=3000, M2=1000000, B=10, то writef(“hello %i%li”, 300, 500) выведет “hello 300500”.

Дана строка, которую вывела некоторая процедура writef. Выясните, какая самая короткая строка могла быть передана передана этой процедуре в качестве первого параметра. Например, для приведенного выше примера, это могла быть строка “hello %lli”.

Входные данные

На первой строке входного файла находятся числа K и B (1 K 50, 2 B 36). Следующая строка содержит числа M0, M1, …, MK-1 (0 M0 M1 MK-1 109, числа заданы в десятичной системе счисления). На следующей строке находится текст, выведенный некоторой процедурой writef. Длина текста не превышает 200 символов. Текст не содерждит символов "%".

Выходные данные

Выведите в выходной файл самую короткую строку, которая могла быть передана процедуре writef в качестве первого параметра. На второй строке перечислите все остальные параметры, которые были ей переданы, числа выводите в десятичной системе счисления и разделяйте ровно одним пробелом.

Если решений несколько, достаточно выдать любое.

Примеры
Входные данные
3 10
300 3000 1000000
hello 300500
Выходные данные
hello %lli
300500 
Входные данные
1 4
1
hello 111
Выходные данные
hello 111

Входные данные
1 2
10
hello 111
Выходные данные
hello %i
7 
Сдать: для сдачи задач необходимо войти в систему