#abc161c. [abc161_c]Replacing Integer

[abc161_c]Replacing Integer

题目描述

给定任意整数 xx,Aoki 可以执行以下操作。

操作:将 xx 替换为 xxKK 的绝对差。

给定一个整数 NN 的初始值。找到 Aoki 在执行零次或多次操作后,NN 可能取到的最小值。

约束条件

  • 0N10180 ≤ N ≤ 10^{18}
  • 1K10181 ≤ K ≤ 10^{18}
  • 输入中的所有值均为整数。

输入

输入从标准输入中以以下格式给出:

NN KK

输出

输出 Aoki 执行零次或多次操作后,NN 可能取到的最小值。


示例输入1

7 4

示例输出1

1

初始时,N=7N=7

经过一次操作后,NN 变为 74=3|7-4| = 3

经过两次操作后,NN 变为 34=1|3-4| = 1,这是 NN 可能取到的最小值。


示例输入2

2 6

示例输出2

2

经过零次操作后,N=2N=2 是最小值。


示例输入3

1000000000000000000 1

示例输出3

0