CF1487B Cat Cycle

题目描述

假设你和两只猫 A 和 B 一起生活。有 $n$ 个猫咪常用的午睡地点。 你的猫喜欢睡觉,也喜欢这些地点,因此它们每小时会按顺序轮流更换午睡地点: - 猫 A 更换午睡地点的顺序为:$n, n-1, n-2, \dots, 3, 2, 1, n, n-1, \dots$。也就是说,第一小时在第 $n$ 号地点,然后按递减顺序循环移动; - 猫 B 更换午睡地点的顺序为:$1, 2, 3, \dots, n-1, n, 1, 2, \dots$。也就是说,第一小时在第 $1$ 号地点,然后按递增顺序循环移动。 猫 B 年纪更小,因此有严格的等级制度:A 和 B 不会一起睡在同一个地点。换句话说,如果两只猫都想去第 $x$ 号地点,那么 A 会占据这个位置,B 则会按照自己的顺序移动到下一个位置(如果 $x < n$,则去 $x+1$,如果 $x = n$,则去 $1$)。猫 B 会继续按照自己的顺序前进,不会回到被跳过的位置,而是继续移动到 $x+2$,以此类推。 请计算,在第 $k$ 小时,猫 B 会在哪个地点睡觉?

输入格式

第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。 每个测试用例包含一行两个整数 $n$ 和 $k$($2 \le n \le 10^9$;$1 \le k \le 10^9$),分别表示地点数和第 $k$ 小时。

输出格式

对于每个测试用例,输出一个整数,表示第 $k$ 小时猫 B 所在的地点编号。

说明/提示

在第一个和第二个测试用例中,$n=2$,所以: - 第 $1$ 小时,A 在 $2$ 号地点,B 在 $1$ 号地点; - 第 $2$ 小时,A 移动到 $1$ 号地点,B 移动到 $2$ 号地点。 如果 $n=3$,则: - 第 $1$ 小时,A 在 $3$ 号地点,B 在 $1$ 号地点; - 第 $2$ 小时,A 移动到 $2$ 号地点;B 想从 $1$ 移动到 $2$,但该地点被占据,所以移动到 $3$; - 第 $3$ 小时,A 移动到 $1$ 号地点;B 也想从 $3$ 移动到 $1$,但该地点被占据,所以移动到 $2$。 在第六个测试用例中: - A 每小时所在的位置为 $[5, 4, 3, 2, 1]$; - B 每小时所在的位置为 $[1, 2, 4, 5, 2]$。 由 ChatGPT 4.1 翻译