U407045 分西瓜啦!(Let’s Distribute Watermelons!)
题目描述
有 $n$ 个西瓜,要分给 $m$ 名学生。你是老师,为了方便公平分配,你希望 $n$ 能被 $m$ 整除。
为了使 $n$ 被 $m$ 整除,在分配前,你可以什么都不做,可以吃掉一些西瓜(减少 $n$ 的值),可以赶走一些学生(减少 $m$ 的值),还可以两者同时进行。可以吃掉全部西瓜,但**不可以赶走全部学生**。记吃掉的西瓜个数与赶走的学生人数之和为**成本**。你的目标是让成本最小。
可以证明,当 $n$ 和 $m$ 一开始为正数时,一定可以通过吃西瓜和赶学生,让 $n$ 被 $m$ 整除。
要使 $n$ 能被 $m$ 整除,求最小成本。
输入格式
**本题包含多个测试用例。**
第一行包含一个整数 $T$($1 \le T \le 2 \cdot 10^4$),表示测试用例的个数。每个测试用例的描述如下:
一行,包含两个用空格隔开的整数 $n$ 和 $m$($0 \le n \le 10^9$,$1 \le m \le 10^9$),表示西瓜的个数和学生的人数。
输出格式
对于每个测试用例,输出一行,包含一个整数,表示最小成本。
说明/提示
在第一个样例中,我们赶走了 $1$ 名学生。
在第二个样例中,我们什么也不用做。
在第三个样例中,我们可以吃掉 $3$ 个西瓜,可以吃掉 $2$ 个西瓜并赶走 $1$ 名学生,可以吃掉 $1$ 个西瓜并赶走 $2$ 名学生,还可以赶走 $3$ 名学生。
在第六个样例中,$8$ 个西瓜全部吃掉了,这是合法的。
在第七个样例中,我们只吃掉了 $1$ 个西瓜,因为 $999 \, 999 \, 999$ 能被 $37$ 整除。
在第九个(最后一个)样例中,我们可以吃掉 $2$ 个西瓜并赶走 $3$ 名学生,也可以吃掉 $3$ 个西瓜并赶走 $2$ 名学生($899 \, 999 \, 999$ 也能被 $30 \, 001$ 整除)。