Submission #1148691

#TimeUsernameProblemLanguageResultExecution timeMemory
1148691yeysoMinerals (JOI19_minerals)C++20
0 / 100
1 ms416 KiB
#include "minerals.h"
#include <bits/stdc++.h>
using namespace std;

void Solve(int N) {
    int cur = 0;
    int prev = 0;
    int x = log2(N) + 1;
    vector<int> binary(N + 1, N + 1);
    for(int bit = 0; bit < x; bit ++){ 
        for(int i = 0; i < N; i ++){
            if(i & (1 << bit)) prev = Query(i + N + 1);
        }
        for(int i = 1; i <= N; i ++){
            cur = Query(i);
            if(cur == prev) binary[i] += (1 << bit);
            prev = Query(i);
        }
        for(int i = 0; i < N; i ++){
            if(i & (1 << bit)) Query(i + N + 1);
        }
    }

    for(int i = 1; i <= N; i ++){
        Answer(i, binary[i]);
    }
}
/*
g++ -std=gnu++17 -O2 -o minerals grader.cpp minerals.cpp

2
1 3
2 4

7
1 9
2 14
3 12
4 10
5 13
6 8
7 11
*/
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...