AT_abc255_c.[ABC255C] ±1 Operation 1
普及-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个整数 X。对 X 进行如下操作称为“一次操作”:
- 从以下两种操作中任选一种并执行:
- 将 X 加 1。
- 将 X 减 1。
对于首项为 A,公差为 D,项数为 N 的等差数列 S,我们称 S 中的数为“好数”。
你可以对 X 进行 0 次或多次操作,使其变为“好数”。请你求出所需操作的最小次数。
输入格式
输入为一行,包含四个整数:
X A D N
输出格式
输出一个整数,表示所需的最小操作次数。
输入输出样例
输入#1
6 2 3 3
输出#1
1
输入#2
0 0 0 1
输出#2
0
输入#3
998244353 -10 -20 30
输出#3
998244363
输入#4
-555555555555555555 -1000000000000000000 1000000 1000000000000
输出#4
444445
说明/提示
限制条件
- 所有输入均为整数。
- −1018≤X,A≤1018
- −106≤D≤106
- 1≤N≤1012
样例解释 1
由于 A=2,D=3,N=3,等差数列 S=(2,5,8)。要将 X=6 变为“好数”,只需对 X 执行一次减 1 操作即可。无法通过 0 次操作使 X 成为“好数”。
样例解释 2
D=0 的情况也是可能的。此外,也可能不需要进行任何操作。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?