Submission #1168196

#TimeUsernameProblemLanguageResultExecution timeMemory
1168196Jawad_Akbar_JJWalk (POI13_spa)C++20
24 / 100
252 ms121928 KiB
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...