Джапшан і Рамшут#6737

Джапшан і Рамшут

0,75 секунди
256 мегабайтів
Дуже складна

Сьогодні Джафшан і Рамшут укладають тротуар перед будинком пані Кочак. Тротуар має форму прямокутника розміром M \times N. Наші робітники мають у своєму розпорядженні нескінченну кількість цеглин розміром 1 \times L_1, 1 \times L_2, ..., 1 \times L_K (цеглини лежали без діла на сусідньому будівельному майданчику).

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

Вхідні дані

Перша строка вхідних даних містить три цілі числа , і (M, N \geq 1, 2 \leq M + N \leq 20, 1 \leq K \leq 5). Друга строка містить чисел — довжини цеглин. Усі довжини цеглин є додатними і не перевищують .

Вихідні дані

Якщо можливо скласти тротуар, виведіть "YES" (без лапок) у першому рядку, потім рядків з малими латинськими літерами, що описують склад. Дві сусідні літери повинні бути однаковими, якщо вони відносяться до однієї цеглини, і різними в іншому випадку. Якщо скласти тротуар неможливо, виведіть "NO" (без лапок). Якщо існує більше одного способу скласти тротуар, виведіть будь-який.

Приклади

Приклад 1

Loading
Loading