Задача №111132. Заклинания
Рассмотрим множество строк M. Строка называется хорошей, если она содержится в качестве подстроки в каждом элементе множества.
Рассмотрим множество хороших строк. Упорядочим его лексикографически. Ваша задача предельно проста — ответить на несколько запросов вида «напечатать k-ую лексикографически хорошую строку». Помните, что каждая строка учитывается только один раз!
В первой строке входных данных содержится число K — вы угадали, количество строк в множестве (1 ≤ K ≤ 20). Далее содержатся сами строки — каждая записана на отдельной строке и состоит только из маленьких латинских букв. Суммарная длина строк не превосходит, о ужас, 105.
Далее содежится число M — да-да, количество запросов. В следующих M строках содержатся описания запросов. Каждое описание состоит из одного целого (!!!) числа — номера строки в лексикографическом порядке. Вам даже обещают, что такая точно найдется, т.е. этот номер не будет превышать общего числа подстрок. Нумерация ведется, как вы уже наверное догадались, с единицы.
Для каждого запроса выведите искомую строку. Гарантируется, что задачу можно решить, ну в смысле суммарная длина строк не будет превосходить 105.
2
abacaba
dabacaba
16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
a
ab
aba
abac
abaca
abacab
abacaba
ac
aca
acab
acaba
b
ba
bac
baca
bacab