一、题目描述
在星球争霸篮球赛对抗赛中,强大的宇宙战队,希望每个人都能拿到MVP。
MVP的条件是,单场最高分得分获得者,可以并列,所以宇宙战队决定在比赛中,尽可能让更多的队员上场,且让所有有得分的队员得分都相同。
然而比赛过程中的每一分钟的得分都只能由某一个人包揽。
二、输入描述
输入第一行为一个数字t,表示有得分的分钟数( 1 <= t <= 50),第二行为t个数字,代表每一分钟的得分p(1 <= p <= 50)。
三、输出描述
输出有得分的队员都是MVP时最少的MVP得分。
四、Java算法源码
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
int t = Integer.parseInt(sc.nextLine());
String[] s = sc.nextLine().split(" ");
int[] scores = new int[t];
for (int i = 0; i < s.length; i++) {
scores[i] = Integer.parseInt(s[i]);
}
int sum = 0, max = 0;
for (int i = 0; i < t; i++) {
sum += scores[i];
if (max < scores[i]) {
max = scores[i];
}
}
while (true) {
if (sum % max == 0) {
System.out.println(max);
break;
} else {
max++;
}
}
}
}
五、效果展示
1、输入
9
5 2 1 5 2 1 5 2 1
2、输出
6
3、说明
样例解释:一共4人得分,分别都为6分
5 + 1
5 + 1
5 + 1
2 + 2 + 2
🏆本文收录于,华为OD机试(JAVA)(2022&2023)
本专栏包含了最新最全的2023年华为OD机试真题,有详细的分析和Java解答。已帮助1000+同学顺利通过OD机考。专栏会持续更新,每天在线答疑。