Submission #514939

#TimeUsernameProblemLanguageResultExecution timeMemory
514939kostia244Minerals (JOI19_minerals)C++17
40 / 100
20 ms1816 KiB
#include "minerals.h" #include<bits/stdc++.h> using namespace std; void Solve(int N) { vector<int> A, B, C(N); for(int lst = 0, i = 1; i <= 2*N; i++) { int cc = Query(i); (cc==lst ? B : A).push_back(i); lst = cc; } // for(auto i : A) cout << i << " "; cout << endl; for(int i = 1; i <= 2*N; i++) Query(i); for(int b = 0; b < 16; b++) { int lst = 0; for(int i = 0; i < N; i++) if((i>>b)&1) lst = Query(A[i]); for(int i = 0; i < N; i++) { int qq = Query(B[i]); C[i] |= (lst == qq)<<b; Query(B[i]); } for(int i = 0; i < N; i++) if((i>>b)&1) Query(A[i]); // for(auto i : C) cout << i << " "; cout << endl; } for(int i = 0; i < N; i++) Answer(A[C[i]], B[i]); }
#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...