// No.392 2分木をたどれ // https://yukicoder.me/problems/no/392 // AC #include #include #include using namespace std; vector solve(vector &queries); int main() { std::cin.tie(nullptr); std::ios::sync_with_stdio(false); unsigned int m; cin >> m; vector queries(m); for (int i = 0; i < m; ++i) cin >> queries[i]; vector ans = solve(queries); for (auto a: ans) cout << a << endl; } vector solve(vector &queries) { vector routes(4095); routes[0] = ""; for (int i = 1; i < 4095; ++i) { int parent = (i - 1) / 2; string me; if (i == parent * 2 + 1) me = "L"; else me = "R"; routes[i] = routes[parent] + me; } vector ans; for (auto q: queries) ans.push_back(routes[q]); return move(ans); }