- 题目提供者 洛谷
- 评测方式 云端评测
- 标签 哈希,HASH 数论,数学 POI 2013 高性能
- 难度 省选/NOI-
- 时空限制 1000ms / 128MB
The names of towns in Byteotia are unique sequences of exactly $n$ bits.
There are $2^n-k$ towns in Byteotia, and thus,only $k$ sequences of $n$ bits do not correspond to any town.
Some pairs of towns are connected with roads.
Specifically, two towns are directly linked by a road if and only if their names differ in a single bit.
The roads do not cross outside of towns.
Byteasar intends to take a stroll - he intends to walk from the town $x$ to the town $y$, taking the existing roads.
Your task is to write a program that will determine if such a walk is possible.
In the first line of the standard input, there are two integers,$n$ and $k$($1\le n\le 60$, $0\le k\le 1\ 000\ 000$, $k\le 2^n-1$, $n\times k\le 5\ 000\ 000$), separated by a single space.
These are the length of town names in bits and the the number of $n$-bit sequences that do not correspond to any town, respectively.
In the second line, there are two strings, separated by a single space, each consisting of $n$ characters 0 and/or 1.
These are the names of the towns $x$ and $y$.
In the $k$ lines that follow, all the sequences of $n$ bits that do not correspond to any town are given, one sequence per line.In the $k$ lines that follow, all the sequences of $n$ bits that do not correspond to any town are given, one sequence per line.Each such sequence is a string of $n$ characters 0 and/or 1.You may assume that $x$ and $y$ are not among those $k$ sequences.输出格式：
Your program should print to the standard output the word TAK (Polish for yes) if walking from the town x to the town y is possible, and the word NIE (Polish for no) otherwise.