星际篮球争霸赛
题目描述:
在星球争霸篮球赛对抗赛中,最大的宇宙战队希望每个人都能拿到MVP,MVP的条件是单场最高分得分获得者。
可以并列所以宇宙战队决定在比赛中尽可能让更多队员上场,并且让所有得分的选手得分都相同,
然而比赛过程中的每1分钟的得分都只能由某一个人包揽。输出有得分的队员都是MVP时,最少得MVP得分。
输入输出描述:
输入描述:
输入第一行为一个数字 t ,表示为有得分的分钟数 1 ≤ t ≤ 50
第二行为 t 个数字,代表每一分钟的得分 p, 1 ≤ p ≤ 50
输出描述:
输出有得分的队员都是MVP时,最少得MVP得分。
示例1:
输入:
9
5 2 1 5 2 1 5 2 1
输出:
6
说明:4人MVP,每个人都是6分。
解题思路:
根据题目要求,先计算出总分,然后 i 开始从 2 枚举,看是否能够均分成 i 份。如果可以,则更新答案。
在尝试是否能够均分的过程中,可以理解为有 i 个桶,尝试将这些元素放在桶中,要求最后 i 个桶中的元素和一致。也可以理解为,每个通的容量为 sum / i,是否能够将桶装满的同时保证所有元素都已经被放在桶中。
以示例为例,当桶的数量为1、2、3、4时的情况:
代码:
public static void main(String[] args) {
Scanner scanner = new Sca