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 翻译