Submission #994944

#TimeUsernameProblemLanguageResultExecution timeMemory
994944peraLibrary (JOI18_library)C++17
0 / 100
29 ms600 KiB
#include<bits/stdc++.h> #include "library.h" using namespace std; void Solve(int N){ vector<int> v , left(N + 1); int L = -1; for(int i = 1;i <= N;i ++){ vector<int> u(N); for(int x = 1;x <= N;x ++){ if(x != i){ u[x - 1] = 1; } } if(Query(u) == 1){ L = i; break; } } assert(L != -1); left[L] = 1; v.push_back(L); for(int d = 1;d < N;d ++){ int x = v[d - 1] , sz = 0; for(int bit = 11;bit >= 0;bit --){ int t = sz + (1 << bit); if(t <= N - d){ int cnt = t; vector<int> u(N); for(int i = 1;i <= N;i ++){ if(!left[i] && cnt > 0){ --cnt; u[i - 1] = 1; } } int bef = Query(u); u[x - 1] = 1; int now = Query(u); if(now != bef){ sz = t; } } } int cnt = sz + 1; for(int i = 1;i <= N;i ++){ if(!left[i]){ --cnt; } if(cnt == 0){ cnt = i; break; } } v.push_back(cnt); left[cnt] = 1; } Answer(v); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...