【免费题库】华为OD机试 - 游戏分组(Java & JS & Python & C & C++)
CSDN 2024-06-26 13:35:05 阅读 61
文章目录
题目描述
输入描述
输出描述
解题思路:
题目描述
部门准备举办一场王者荣耀表演赛,有 10 名游戏爱好者参与,分为两队,每队 5 人。
每位参与者都有一个评分,代表着他的游戏水平。为了表演赛尽可能精彩,我们需要把 10 名参赛者分为示例尽量相近的两队。
一队的实力可以表示为这一队 5 名队员的评分总和。
现在给你 10 名参与者的游戏水平评分,请你根据上述要求分队,最后输出这两组的实力差绝对值。
例:10 名参赛者的评分分别为:5 1 8 3 4 6 7 10 9 2,分组为(1 3 5 8 10)和(2 4 6 7 9),两组实力差最小,差值为1。有多种分法,但是实力差的绝对值最小为1。
输入描述
10个整数,表示10名参与者的游戏水平评分。范围在 [1, 10000] 之间。
输出描述
1个整数,表示分组后两组实力差绝对值的最小值。
用例1
输入
1 2 3 4 5 6 7 8 9 10
输出
1
说明
10名队员分为两组,两组实力差绝对值最小为1
解题思路:
首先将10名参赛者的评分进行排序。
然后遍历所有可能的分组方式,计算两组实力差绝对值。
在所有分组方式中,找到实力差绝对值最小的分组方式。
Java 代码:
i
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。