AT_abc255_c [ABC255C] ±1 Operation 1
题目描述
给定一个整数 $X$。对 $X$ 进行如下操作称为“一次操作”:
- 从以下两种操作中任选一种并执行:
- 将 $X$ 加 $1$。
- 将 $X$ 减 $1$。
对于首项为 $A$,公差为 $D$,项数为 $N$ 的等差数列 $S$,我们称 $S$ 中的数为“好数”。
你可以对 $X$ 进行 $0$ 次或多次操作,使其变为“好数”。请你求出所需操作的最小次数。
输入格式
输入为一行,包含四个整数:
> $X\ A\ D\ N$
输出格式
输出一个整数,表示所需的最小操作次数。
说明/提示
## 限制条件
- 所有输入均为整数。
- $-10^{18} \leq X, A \leq 10^{18}$
- $-10^6 \leq D \leq 10^6$
- $1 \leq N \leq 10^{12}$
## 样例解释 1
由于 $A=2, D=3, N=3$,等差数列 $S=(2,5,8)$。要将 $X=6$ 变为“好数”,只需对 $X$ 执行一次减 $1$ 操作即可。无法通过 $0$ 次操作使 $X$ 成为“好数”。
## 样例解释 2
$D=0$ 的情况也是可能的。此外,也可能不需要进行任何操作。
由 ChatGPT 4.1 翻译