Submission #776390

# Submission time Handle Problem Language Result Execution time Memory
776390 2023-07-07T19:40:55 Z Tkm_algo Rack (eJOI19_rack) C++17
0 / 100
1 ms 212 KB
#include "bits/stdc++.h"

using namespace std;
using ll = long long;

vector<int> vis, ans;
bool cyk;
int tt;

void rec(int x, int lx, int rx) {
	if (cyk) {
		return;
	}
	if (rx - lx == 1) {
		if (vis[x] == 1) {
			cyk = 1;
			return;
		}
		ans.push_back(rx);
		return;
	}
	int md = (lx + rx) / 2;
	if (vis[x] == 0) {
		rec(2 * x, lx, md);
	} else {
		rec(2 * x + 1, 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 time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -