10559: Кубики
Батьки подарували Степану набір дитячих кубиків на кожній з шести граней кожного кубика написана літера.
Степан хоче скласти з кубиків задане слово. Один кубик можна використати лише для однієї літери.
Заданий набір кубиків і слово яке потрібно викласти.
Визначіть, чи можна викласти це слово, і якщо так, то в якому порядку викласти кубики.
Формат вхідних даних
В першому рядку ціле число \(N\) (\(1 \le N \le 100\)) - кількість кубиків у Степана.
В другому рядку задане слово з великих латинських літер, довжиною не більше 100 символів - яке необхідно викласти.
Наступні \(N\) рядків містять по 6 літер (тільки великі латинські літери), які написані на відповідному кубику.
Формат вихідних даних
В першому рядку виведіть YES якщо викласти задане слово з кубиків можна, і NO в іншому випадку.
Якщо відповідь YES , то в другому рядку виведіть \(M\) різних чисел розділені пропусками - номера кубиків які необхідно використати для кожної літери заданого слова (кубики нумеруються з 1 в тому порядку, в якому вони були задані). Якщо розв'язків декілька, виведіть будь-який.
Приклад вхідних даних-1
2
AB
AAAAAB
AAAAAA
Приклад вихідних даних-1
YES
2 1
Приклад вхідних даних-2
3
ANNY
AAAAAA
NNNNNN
YYYYYY
Приклад вихідних даних-2
NO
Коментарі