CF1624A Plus One on the Subset
题目描述
Polycarp 收到了一份整数数组 $a[1 \dots n]$ 作为礼物。现在他希望通过若干次操作(可以为零次),使得数组中的所有元素都变成相同的值(即 $a_1=a_2=\dots=a_n$)。
- 每次操作时,他可以选择数组中的若干个下标,并将这些下标对应的数组元素都加 $1$。
例如,设 $a=[4,2,1,6,2]$。他可以进行如下操作:选择下标 $1,2,4$,并将这些位置上的元素都加 $1$。操作后,数组变为 $a=[5,3,1,7,2]$。
请问,最少需要多少次操作,才能使数组 $a$ 的所有元素都相等(即 $a_1=a_2=\dots=a_n$)?
输入格式
输入的第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。
接下来是每个测试用例的描述。
每个测试用例的第一行包含一个整数 $n$($1 \le n \le 50$),表示数组 $a$ 的长度。
每个测试用例的第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($1 \le a_i \le 10^9$),表示数组 $a$ 的元素。
输出格式
对于每个测试用例,输出一个整数,表示将数组 $a$ 的所有元素变为相等所需的最少操作次数。
说明/提示
第一个测试用例:
- $a=[3,4,2,4,1,2]$,选择 $a_3, a_5$ 并对它们执行加一操作,结果为 $a=[3,4,3,4,2,2]$。
- $a=[3,4,3,4,2,2]$,选择 $a_1, a_5, a_6$ 并对它们执行加一操作,结果为 $a=[4,4,3,4,3,3]$。
- $a=[4,4,3,4,3,3]$,选择 $a_3, a_5, a_6$ 并对它们执行加一操作,结果为 $a=[4,4,4,4,4,4]$。
还有其他 $3$ 次操作的方案,也能使所有元素相等。
第二个测试用例:
- $a=[1000,1002,998]$,两次选择 $a_1, a_3$ 并执行加一操作,结果为 $a=[1002,1002,1000]$。
- $a=[1002,1002,1000]$,再两次选择 $a_3$ 并执行加一操作,结果为 $a=[1002,1002,1002]$。
第三个测试用例:
- $a=[12,11]$,选择 $a_2$ 并执行加一操作,结果为 $a=[12,12]$。
由 ChatGPT 4.1 翻译