P16342 [科大国创杯初中组 2026] 倍数调整

题目背景

Subtask 0 为民间数据,Subtask 1 为官方测试数据。

题目描述

小可可有两个正整数 $a, b$。 定义一次操作为:选择 $a, b$ 的其中一个,并把它 $+1$ 或 $-1$。注意,你需要时刻保证 $a \ge 1, b \ge 1$。 现在小可可想要通过若干次操作使得 $a$ 是 $b$ 的倍数。那么请你告诉他,他最少要操作多少次呢?

输入格式

一行两个正整数 $a, b$。

输出格式

一行一个数字,表示小可可至少要操作多少次使得 $a$ 是 $b$ 的倍数。

说明/提示

#### ****样例解释**** 可以令 $a \leftarrow a + 1$,$b \leftarrow b - 1$。这样 $a = 10, b = 5$,符合条件,此时操作数为 $2$。可以证明不存在更小的操作数。 #### ****其它样例说明**** * **样例 2 ~ 6**:见选手目录下的 `adjust/adjust*.in` 与 `adjust/adjust*.ans`。 #### ****数据范围**** 对于所有数据,保证 - $1 \le a \le 10^{18}$, - $1 \le b \le 10^6$, - $a, b$ 均为正整数。 | 测试点编号 | $a \le$ | $b \le$ | | :---: | :---: | :---: | | $1 \sim 2$ | $10^{18}$ | $1$ | | $3$ | $10$ | $10$ | | $4 \sim 5$ | $4000$ | $4000$ | | $6 \sim 7$ | $10^6$ | $10^6$ | | $8 \sim 10$ | $10^{18}$ | $10^6$ |