Тетрис
시간 제한2초메모리 제한1024 MB
뒤집을 수 없는 테트로미노 조각을 주어진 개수만큼 사용해 작은 판의 빈칸을 모두 덮고, 각 칸에 조각 번호를 출력한다.
문제
Маленький Ян очень много играл в компьютерные игры, поэтому родители запретили мальчику играть в его любимый <<Тетрис>>.
Но Ян не отчаивается. Он смастерил свою собственную игру --- <<Настольный Тетрис>>. Правила этой игры очень просты. Игра производится на прямоугольном поле размера . Изначально некоторые клетки поля заняты, а остальные свободны. Игроку требуется набором фигурок из тетриса покрыть все свободные клетки, при этом фигурки не должны накладываться друг на друга или на уже занятые клетки. Так как все фигурки с одной стороны покрашены, а с другой нет, то переворачивать их нельзя, однако можно их поворачивать.

Изначально Ян хотел выпилить бесконечно много фигурок каждого типа, но он очень быстро устал, поэтому у него есть только фигурок типа .

Ян смастерил несколько полей для игры, и теперь ему интересно, можно ли их покрыть фигурками. Помогите Яну решить эту задачу.
입력
В первой строке входного файла заданы два целых числа и () --- размеры игрового поля. В следующей строке заданы семь целых чисел (). Следующие строк входного файла содержат описание поля. Каждая строка содержит символов. Символ '.' означает, что клетка свободна, '#' --- занята.
출력
Если покрыть свободные клетки фигурками нельзя выведите в выходной файл единственное слово <<NIE>> (нет по-польски). Иначе в первой строке выведите единственное слово <<TAK>> (да по-польски). В следующих строках выведите описание покрытого поля. Каждая строка описания должна содержать целых чисел --- номера фигурок, которыми покрыты соответствующие клетки поля. Фигурки должны иметь номера от до , при этом разные фигурки должны иметь разные номера. Для изначально занятых клеток требуется выводить .