Gửi bài giải
Điểm:
0,53 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
512M
Input:
stdin
Output:
stdout
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Xét tập số nguyên ~S~. Ban đầu tập chỉ chứa số 1.
Một lần biến đổi ~S~, người ta làm theo cách sau:
- Thay thế mỗi số nguyên ~x~ trong ~S~ bằng 2 số mới là ~2x+1~ và ~3x+1~
Yêu cầu: Cho hai số ~N~ và ~M~ ~(1 \le N \le 31, 1 \le M \le 2^N)~. Sau ~N~ lần biến đổi ~S~, hãy xác định số thứ ~M~ trong ~S~, nếu ~S~ được sắp xếp theo thứ tự tăng dần.
Input
Gồm nhiều dòng, mỗi dòng chứa hai số ~N~ và ~M~, có không quá 5000 input.
Output
Mỗi dòng là kết quả tương ứng với input, kết quả là số int64
(Pascal)
hoặc long long int
(C, C++)
Sample Input
2 4
3 2
Sample Output
13
19
Bình luận