#CF1931C. C. 使数组全部相等
C. 使数组全部相等
C. 使数组全部相等
每个测试的时间限制:2 秒
每个测试的内存限制:256 兆字节
你有一个由 个整数组成的数组 。
你最多可以执行一次如下操作:选择三个整数 (满足 ),并将数组中从下标 到 的所有元素的值都赋值为 。该操作的成本取决于所选区间,等于 个 burles。
例如,数组为 。如果选择 ,操作后数组变为 。
要使数组的所有元素相等,最少需要花费多少个 burles?
输入格式
第一行包含一个整数 (),表示测试用例的数量。接下来是每个测试用例的描述。
每个测试用例的第一行包含一个整数 (),表示数组的大小。
第二行包含 个整数 (),表示数组元素。
保证所有测试用例的 之和不超过 。
输出格式
对于每个测试用例,输出一个整数——使数组所有元素相等所需的最小 burles 数量。可以证明,总能通过这样的操作实现。
示例
输入
8
6
1 2 3 4 5 1
7
1 1 1 1 1 1 1
8
8 8 8 1 2 8 8 8
1
1
2
1 2
3
1 2 3
7
4 3 2 7 1 1 3
9
9 9 2 9 2 5 5 5 3
输出
4
0
2
0
1
2
6
7