Problem 3521 --乐队的夏天

3521: 乐队的夏天

"
Time Limit $1$ 秒/Second(s) Memory Limit $512$ 兆字节/Megabyte(s)
提交总数 $1$ 正确数量 $1$
裁判形式 标准裁判/Standard Judge 我的状态 尚未尝试
难度 分类标签

领取了物业的精美礼品,图图看距离晚餐还有一段时间,所以就觉得和朋友们一起看会电视,他们选择看他们都最喜欢的节目《乐队的夏天》了,这是个音乐综艺节目,这一期的结果是组队选拔,有n(n<=5000)组乐队来参加节目选拔,选拔的形式是表演三首歌曲,每组参加选拔的乐队表演的都是同样的三首歌,评委根据每个乐队的表现,分别给他们的三首歌曲打分(分数范围1-150分)。现在节目组告诉了你每个乐队的乐队名,以及他们三首歌曲的得分,想请你帮忙找出“水平相近”的乐队,以便他们安排两两对抗赛。“水平相近”指的是:两个乐队每首歌曲的得分差不大于5,且总分分差不大于10。

您需要先将所有乐队根据“水平相近”原则进行两两分组。然后输出每个分组中两个乐队的乐队名。输出时字典序小的先输出,字典序大的后输出;

分组规则如下:

1. 如果仅有两个乐队符合“水平相近”原则,则这两个乐队分为一组,输出时字典序小的先输出,字典序大的后输出;

2. 如果某个乐队没有与其“水平相近”的其他乐队,则该乐队独自演出,一个一组,输出乐队名和SOLO;

3. 如果出现多个乐队属于“水平相近”的队伍,例如A,B,C,D,E五组队伍中任意两个队伍都水平相近,则优先选择字典序较小的两只队伍分为一组,接着用相同规则对剩下的队伍进行分组,如果最后只剩下一只队伍,则参照规则2,剩下的队伍独立一组,输出乐队名和SOLO。

4. 如果某只队伍和多支队伍“水平相近”,则优先选择多只队伍中字典序最小的进行分组。例如假设队伍A和队伍B,以及队伍C都“水平相近”,且队伍B的字典序比队伍C的字典序更小,则将队伍A和队伍B进行组队。

第一行是一个整数n,n<=5000;

接下来n行,每行描述一个乐队的信息,包含一个字符串和三个整数,分别表示一个乐队名,以及三首歌的得分,字符串是长度不超过8,字符串中不包含空格。

按照题目要求的输出顺序,输出所有的分组情况。
4
apple 98 82 95
life 95 85 90
super 100 80 91
dream 90 90 150
apple life
dream SOLO
super SOLO

推荐代码 查看3521 所有题解 上传题解视频得图灵币

本题记录 用 户(点击查看用户) 运行号(点击购买题解) 时 间
算法最快[$196 $ms] AOJ大管家 618754 2020-10-11 22:11:26
内存最少[$2304 $KB] AOJ大管家 618754 2020-10-11 22:11:26
第一AC AOJ大管家 618754 2020-10-11 22:11:26
第一挑战 AOJ大管家 618754 2020-10-11 22:11:26

赛题来源/所属竞赛 结构体 小学模拟题 N/A

竞赛编号 竞赛名称 竞赛时间 访问比赛