Məsələlər
Игра в слова
Игра в слова
Двое играют в следующую игру:
Первый игрок загадывает слово \textbf{W} и говорит второму его длину. Второй игрок пытается отгадать слово, называя слова \textbf{G_i} такой же длины, а первый на каждое названное слово отвечает, чётно или нечётно количество позиций в \textbf{G_i}, на которых стоят правильно угаданные буквы, находящиеся в тех же местах слова \textbf{W}. Так продолжается до тех пор, пока второй игрок не сможет целиком назвать слово, загаданное первым.
По данным словам \textbf{G_i} и ответам на них выясните, каким могло быть загаданное слово \textbf{W}.
В этой задаче "\textit{словом}" называется любая последовательность заглавных латинских букв.
\InputFile
В первой строке входного файла записаны два целых неотрицательных числа \textbf{N} и \textbf{M} - количество названных вторым игроком слов, для которых количество совпадений чётно, и количество слов, для которых оно нечётно. Суммарно \textbf{1} ≤ \textbf{N + M} ≤ \textbf{64}.
Во второй строке записаны через пробел \textbf{N} слов одинаковой длины, состоящие из заглавных латинских букв - те названные слова, для которых количество совпадений чётно.
Во третьей строке записаны через пробел \textbf{M} слов одинаковой длины, состоящие из заглавных латинских букв - те названные слова, для которых количество совпадений нечётно.
Длины слов в обеих строках одинаковы и находятся в пределах от \textbf{1} до \textbf{9} символов, включительно. Кроме того, известно, что количество возможных загаданных слов \textbf{W} в каждом тесте не превосходит \textbf{1000}.
\OutputFile
В первой строке выходного файла выведите число \textbf{K} - количество различных слов, которые мог загадать первый игрок. Во второй строке выведите все эти слова в лексикографическом порядке через пробел. Слова должны состоять из заглавных латинских букв.
Giriş verilənləri #1
3 3 DAY MAY BUY SAY DUE TEN
Çıxış verilənləri #1
1 SEE