这是一个经典的 约瑟夫问题。n 个人围成一圈,从第 1 个人开始按 1,2,1,2,... 报数,报到 1 的出队,留下来的人继续按此规则报数,直到所有人出队。
现有 q 次询问,每次求第 x 个人是第几个出队的。
输入
第一行两个数 n,q \ (1 \leq n \leq 10^{16},1 \leq q \leq 5 \times 10^5)。
接下来 q 行,每行一个数 x \ (1 \leq x \leq n),表示询问。
输出
每个询问输出一行一个整数,表示询问的答案。
样例
标准输入 复制文本 |
4 3 2 3 4 |
标准输出 复制文本 |
3 2 4 |