#include "brperm.h"
#include <bits/stdc++.h>
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2")
#define int long long
#define pii pair<int,int>
#define vi vector<int>
#define ff first
#define ss second
#define sp << " " <<
#define all(x) x.begin(),x.end()
#define big(x) ((int)(x.size()))
using namespace std;
const int MOD = 1e9+7, LIM = 1e6+1, inf = 2e9;
int revbits(int x,int k) {
int ans = 0;
for (int j = 0;j<k;j++) {
if (x&(1LL<<(k-j-1))) ans+=(1LL<<j);
}
return ans;
}
string t;
void init(signed n, const char s[]) {
t.resize(n);
for (int j = 0;j<n;j++) t[j] = s[j];
}
signed query(signed p, signed k) {
if (p+(1LL<<k)-1 >= big(t)) {
while (1) cerr << "WTF\n";
}
string tt = t;
for (int j = 0;j<(1LL<<k);j++) {
int togo = revbits(j,k);
//cerr << j sp togo sp k << endl;
tt[p+togo] = t[p+j];
}
//cerr << tt sp t << endl;
return tt == t;
}
| # | 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... |