AlgoMooc
你已开通华为OD训练营权益,还差最后一步——完成入营激活(兑换课程 + 加飞书 + 登记服务群),即可解锁全部课程与专属服务。去激活 →
← 返回题库

P3807. 表演赛游戏分组

中等通过率 60% · 提交 541 · 通过 325
回溯动态规划背包DP枚举回溯/DP

小慕正在组织一场团队协作挑战赛,有 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。

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解
表演赛分组:两队实力差最小 输入评分:5 1 8 3 4 6 7 10 9 2 A队 队员:1, 3, 5, 8, 10 总分 = 1+3+5+8+10 = 27 B队 队员:2, 4, 6, 7, 9 总分 = 2+4+6+7+9 = 28 vs 实力差绝对值 = |27 - 28| = 1 最小差值
写完代码点「提交」,将对全部测试用例判题。

向老师提问

针对「表演赛游戏分组」把疑问、代码和报错填清楚,老师收到后能更快、更准地回复你。