10559: Кубики


Відправити розв'язок

Бали: 100 (partial)
Time limit: 2.0s
Memory limit: 100M

Author:
Problem type
Allowed languages
Brain****, C, C++, Java, Pascal, Python, v8js

Батьки подарували Степану набір дитячих кубиків на кожній з шести граней кожного кубика написана літера.

Степан хоче скласти з кубиків задане слово. Один кубик можна використати лише для однієї літери.

Заданий набір кубиків і слово яке потрібно викласти.
Визначіть, чи можна викласти це слово, і якщо так, то в якому порядку викласти кубики.

Формат вхідних даних

В першому рядку ціле число \(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

Коментарі

Ще немає коментарів.