问题 5782 --积木游戏

5782: 积木游戏

时间限制: 1 Sec  内存限制: 128 MB
提交: 40  解决: 21
[提交][状态][命题人:]

题目描述

明明同学共有n个盒子,第i个盒子里共有ai块积木,明明同学准备按照下列方法玩积木游戏。游戏共分为两步:

Step1:随机选则一个盒子i

Step2:将第i个盒子中的所有积木都移到其他盒子中。

如果在游戏中,明明同学能够使得剩下的n-1个盒子(不包括第i个盒子)中的积木相等,则明明同学就很有成就感而开心,否则明明同学就会觉得沮丧。作为明明同学的好朋友,你显然不想让明明同学沮丧,所以你决定帮助明明。因此,你决定向某些盒子中增加一些积木,从而使得明明同学无论选择哪一个盒子都可以成功完成游戏而感到开心。

请问,你最少需要增加多少块积木呢?

输入

    

第一行只有一个整数t(1≤t≤1000):测试用例的数量。

每个测试用例共两行:

第一行只有一个整数n2≤n≤1e5):盒子的数量;

     第二行共n个整数a1,a2,a3,……,an(0≤ai≤1e9)ai为第i个盒子中的积木数量。


输出

输出共t行,每个测试用例一行一个整数:你最少需要增加的积木数量,从而可以确保明明同学任意选择一个盒子都可以因为完成游戏而开心。

样例输入
Copy
3
3
3 2 2
4
2 2 3 2
3
0 3 0
样例输出
Copy
1
0
3

提示

在第一个测试用例中,你可以在第一个盒子中增加一块积木,从而将[3,2,2]转换成[4,2,2],显然此时明明同学无论选择哪个盒子移动积木,都可以使得剩下的两个盒子中的积木数量相等。

在第二个测试用例中,你不需要增加积木。

在第三个测试用例中,你可以在第一个盒子中增加2块积木,在第三个盒子中增加1块积木,形成[2,3,1]序列即可,所以至少需要增加3块积木。

题解.PPT

来源

 

[提交][状态]