Submission #776395

#TimeUsernameProblemLanguageResultExecution timeMemory
776395Tkm_algoRack (eJOI19_rack)C++17
40 / 100
122 ms16788 KiB
#include "bits/stdc++.h" using namespace std; using ll = long long; vector<int> vis, ans; int tt; void rec(int x, int lx, int rx) { if (rx - lx == 1) { ans.push_back(rx); return; } int md = (lx + rx) / 2; if (vis[x] == 0) { rec(2 * x + 1, lx, md); } else { rec(2 * x + 2, md, rx); } vis[x] = (vis[x] + 1) % 2; } void solve() { int n, k; cin >> n >> k; n = pow(2, n); vis.assign(2 * n + 1, 0); rec(0, 0, n); for (int i = 0; i < n; i++) { rec(0, 0, n); } cout << ans[k - 1] << '\n'; } int main() { ios::sync_with_stdio(false); cin.tie(0); int test = 1; // cin >> test; while (test--) { solve(); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...