Submission #596549

# Submission time Handle Problem Language Result Execution time Memory
596549 2022-07-14T20:13:09 Z ThegeekKnight16 Brperm (RMI20_brperm) C++14
0 / 100
1242 ms 9312 KB
#include <bits/stdc++.h>
#include <brperm.h>
using namespace std;
const int MAXN = 5e5 + 10;
int Roupas[MAXN], pos[MAXN];
 
int findK(int num)
{
    for (int k = 20; k >= 0; k--) if (num & (1 << k)) return k;
  	return 0;
}
 
int inv(int num, int K)
{
    int resp = 0;
    for (int k = K; k >= 0; k--) resp += (num & (1 << k)) ? (1 << (K - k)) : 0;
    return resp;
}
 
int query(int X, int K)
{
    int Y = X + (1 << K) - 1;
    
    int maxK = findK(Y - X);
    
    for (int i = X; i <= Y; i++) pos[i] = inv(i-X, maxK) + X;
    
    for (int i = X; i <= Y; i++) if (Roupas[i] != Roupas[pos[i]]) {return 0;}
    return 1;
}
 
void init(int N, const char s[])
{
    for (int i = 0; i < N; i++) Roupas[i] = s[i];
    int K = findK(N-1);
    for (int i = 0; i < N; i++) pos[i] = inv(i, K);
}
 
/*int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    init(4, "axxy");
    cout << query(0, 2);
}*/
# Verdict Execution time Memory Grader output
1 Incorrect 1242 ms 2372 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1242 ms 2372 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 188 ms 9312 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1242 ms 2372 KB Output isn't correct
2 Halted 0 ms 0 KB -