제출 #1297019

#제출 시각아이디문제언어결과실행 시간메모리
1297019dostsBrperm (RMI20_brperm)C++20
0 / 100
3096 ms21164 KiB
#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(int n, const char s[]) { while (big(t) != n) t+='0'; for (int j = 0;j<n;j++) t[j] = s[j]; } int query(int p, int 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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...