题库练习 Carnival Wheel
← 上一题 下一题 →

A16821 | Carnival Wheel

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

你有一个被分成 $l$ 个区域的奖品转盘,这些区域编号从 $0$ 到 $l-1$。这些区域排列成一个圆环,所以在 $l-1$ 区域之后,编号又从 $0$ 区域重新开始。

初始时,指针指向第 $a$ 区域。每次转动转盘时,指针都会正好前进 $b$ 个区域。也就是说,转动一次后,指针会从第 $a$ 区域移动到第 $(a+b)\bmod l$ 区域;转动两次后到达第 $(a+2b)\bmod l$ 区域,依此类推$^*$。

你可以选择任意次数地转动转盘(包括零次)。当你停止时,指针最终停留的区域决定了你的奖品:你获得的奖金等于该区域的编号。

你能获得的最大奖金是多少?

$^*$ 这里,$x\bmod y$ 表示 $x$ 除以 $y$ 的余数。

输入格式

每组测试包含多组测试数据。第一行为测试数据组数 $t$($1 \le t \le 500$)。
接下来的每组测试数据,每行为三个整数 $l,a,b$($1 \le l, b \le 5000$,$0 \le a \le l-1$)。

输出格式

对于每组测试数据,输出你能获得的最大奖金。

输入输出样例

输入 #1
4
5 3 2
2 0 6
8 2 4
100 0 1
输出 #1
4
0
6
99
C++ 编辑器
输入
输出