CF1834B Maximum Strength
题目描述
Fedya 正在玩一款新游戏“The Legend of Link”,其中角色的一项能力是将两种材料合成为一把武器。每种材料都有自己的强度,可以用一个正整数 $x$ 表示。合成后武器的强度由两个整数的每一位数字的绝对差之和决定。
形式化地,设第一种材料的强度为 $X = \overline{x_{1}x_{2} \ldots x_{n}}$,第二种材料的强度为 $Y = \overline{y_{1}y_{2} \ldots y_{n}}$。那么武器的强度计算公式为 $|x_{1} - y_{1}| + |x_{2} - y_{2}| + \ldots + |x_{n} - y_{n}|$。如果两个整数的位数不同,则较短的整数在高位补零。
Fedya 拥有强度从 $L$ 到 $R$(包含 $L$ 和 $R$)的所有可能材料的无限供应。请帮助他找出能够获得的最大武器强度。
一个整数 $C = \overline{c_{1}c_{2} \ldots c_{k}}$ 定义为依次从左到右写下数字 $c_1, c_2, \ldots, c_k$ 得到的整数,即 $10^{k-1} \cdot c_1 + 10^{k-2} \cdot c_2 + \ldots + c_k$。
输入格式
每组测试数据包含多组测试用例。第一行包含测试用例数 $t$($1 \le t \le 500$)。接下来是每组测试用例的描述。
每组测试用例的第一行包含两个整数 $L$ 和 $R$($1 \le L \le R < 10^{100}$),表示 Fedya 拥有的材料的最小和最大强度的十进制表示。保证输入的整数 $L$ 和 $R$ 没有前导零。
注意,输入数据可能无法用标准的 $32$ 位或 $64$ 位整数类型存储。
输出格式
对于每组测试用例,输出一个整数,表示 Fedya 能够获得的最大武器强度。
说明/提示
在第一个测试用例中,由强度为 $53$ 和 $57$ 的材料合成的武器将具有最大强度:$|5 - 5| + |3 - 7| = 4$。
在第二个测试用例中,最大强度由强度为 $190$ 和 $209$ 的材料合成:$|1 - 2| + |9 - 0| + |0 - 9| = 19$。
在第四个测试用例中,只有一种有效强度,因此答案为 $0$。
在第六个测试用例中,最大强度由强度为 $1909$ 和 $90$ 的材料合成:$|1 - 0| + |9 - 0| + |0 - 9| + |9 - 0| = 28$。注意,较短的整数在高位补零。
由 ChatGPT 4.1 翻译