#include <iostream>
using namespace std;
int seen[(1<<22)], X, Y;
int get(int n, int inp = 0){
while (n--){
char c;
cin>>c;
inp = inp * 2 + c - '0';
}
return inp;
}
void dfs(int n, int x){
if (x == Y){
cout<<"TAK\n";
exit(0);
}
if (seen[x])
return;
seen[x] = 1;
for (int i=0;i<n;i++)
dfs(n, x ^ (1<<i));
}
int main(){
int n, k;
cin>>n>>k;
X = get(n), Y = get(n);
for (int i=1;i<=k;i++)
seen[get(n)] = 1;
dfs(n, X);
cout<<"NIE\n";
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |