
Мальчик Петя любит отгадывать кроссворды и решать задачки. Однажды он 
нашел в газете новую головоломку под названием «Эрудит», в 
которой задана квадратная таблица размером 4 × 4, заполненная буквами. 
В ней требуется найти как можно больше слов, которые могут быть записаны 
по горизонтали или по вертикали в любом направлении. Слова могут ломаться в 
любом месте под прямым углом, но не могут самопересекаться. 
Петин друг Вася увидел, что тот разгадывает эту головоломку, и сообщил ему, 
что это занятие глупое. Вася — сын программиста, и, конечно же, 
догадался, что можно решить головоломку, просто перебрав все слова из 
словаря. «Раз такой умный — вот и пиши программу, а я уж как-нибудь сам 
справлюсь», — обиделся Петя. Помогите Васе достойно выйти из положения и 
напишите ему такую программу.
Исходные данные
В первых четырех строках записана головоломка — таблица размером 
4 × 4, состоящая из строчных латинских букв.
В следующей строке записано число n — количество слов в словаре 
(не более 100). В следующих n строках записано по одному слову. 
Все слова состоят из строчных латинских букв и имеют длину от 1 до 16.
Результат
Для каждого слова из словаря выведите «YES», если слово присутствует в 
таблице, и «NO» в противном случае. Используйте формат из примера.
Пример
| исходные данные | результат | 
|---|
| abra
adac
babr
arca
3
abracadabra
ababaab
ababaaba | abracadabra: YES
ababaab: YES
ababaaba: NO
 | 
Автор задачи: Владимир Яковлев
Источник задачи: Девятое открытое личное первенство УрГУ (1 марта 2008)