Submission #924198

#TimeUsernameProblemLanguageResultExecution timeMemory
924198CamillusBrperm (RMI20_brperm)C++17
0 / 100
2 ms2392 KiB
#include "bits/stdc++.h" #define debug(...) 42 using namespace std; #ifndef LOCAL #include "brperm.h" #else void init(int n, const char s[]); int query(int i, int k); #endif string s; void init(int N, const char S[]) { s = string(S, S + N); } int swapped(int i, int k) { int a = 1; int b = 1 << (k - 1); if (bool(i & a) == bool(i & b)) { return i; } else { i ^= a; i ^= b; return i; } } int query(int i, int k) { for (int j = 0; j < (1 << k); j++) { if (swapped(j, k) >= (1 << k)) { while(true) {} } if (s[i + j] != s[i + swapped(j, k)]) { return false; } } return true; } #ifdef LOCAL char __s[(int)5e5 + 10] = {}; int main() { cin >> __s; init(strlen(__s), __s); int __x, __y; while (cin >> __x >> __y) cout << query(__x, __y) << '\n'; return 0; } #endif
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...