Submission #1143270

#TimeUsernameProblemLanguageResultExecution timeMemory
1143270elisaipateWalk (POI13_spa)C++20
0 / 100
7 ms3136 KiB
#include <iostream> using namespace std; #define int long long const int kmax = 1e6; const int nmax = 1e7; int v[kmax]; bool viz[nmax]; int n; int tr( string s ) { int p2 = 1, rez = 0; for( int i = n - 1; i >= 0; i-- ) { rez = rez + p2 * s[i] - '0'; p2 *= 2; } return rez; } void bfs( int vf ) { viz[vf] = true; int p2 = 1; for( int i = 0; i < n; i++ ) { if( (vf / p2) % 2 == 0 ) { if( viz[vf + p2] == false ) bfs( vf + p2 ); } else { if( viz[vf - p2] == false ) bfs( vf - p2 ); } p2 *= 2; } } signed main() { int k; cin >> n >> k; int x, y; string s; cin >> s; x = tr(s); cin >> s; y = tr(s); for( int i = 0; i < k; i++ ) { cin >> s; v[i] = tr(s); viz[v[i]] = true; } bfs( x ); if( viz[y] == true ) cout << "TAK"; else cout << "NIE"; return 0; }
#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...