P17718 「FunMusic OI 1A」流沙 / Everything's Gone

题目背景

题目来源:【HT-127-Div.3】核桃CSP-J组模拟赛 &「FunMusic OI R1」 ![](bilibili:BV1Sy4y1m7Uk)

题目描述

David 正在录音棚里为第一张专辑中的一首伤感情歌录制最后的主旋律。合成器上旋律的初始音高是 $a$,他心目中的完美音高是 $b$。合成器面板上只有三个按键: - 大幅升调键,每按一次能让音高上升 $k$; - 微升键,每按一次能让音高上升 $1$; - 微降键,每按一次能让音高下降 $1$。 David 希望能用最少的按键次数将音高从 $a$ 调整到 $b$,请你求出这个最小次数。

输入格式

第一行一个整数 $T$,表示测试数据组数。 接下来共 $T$ 行,每行三个整数 $a,b,k$,含义见题目描述。

输出格式

输出共 $T$ 行,每行一个整数,表示最小按键次数。

说明/提示

**【样例解释】** 对于第一组测试样例,以下为其中一种按键次数最小的方案(共 $2$ 次): - 第一次,按下大幅升调键,此时音高变为 $2+2=4$。 - 第二次,按下微升键,此时音高变为 $4+1=5$。 **【数据范围】** ::cute-table{tuack} | 测试点编号 | $a, b, k\le$ | $T \le$ | 特殊性质 | | :--------: | :------------: | :-----: | :------------: | | $1$ | $10$ | $100$ | 无 | | $2\sim 3$ | $100$ | $10^5$ | 无 | | $4\sim 5$ | $2\times 10^5$ | $10^5$ | 无 | | $6\sim 8$ | $10^9$ | $10^5$ | 保证 $a \ge b$ | | $9\sim10$ | $10^9$ | $10^5$ | 无 | 对于 $100\%$ 的数据,保证 $1\le T\le 10^5$,$1\le a,b,k\le 10^9$。