#t548. 旗鼓相当的对手(加强版)
旗鼓相当的对手(加强版)
旗鼓相当的对手(加强版)
题目描述
现有 名同学参加了期末考试,并且获得了每名同学的信息:姓名(不超过 个字符的字符串,不含空格)、语文、数学、英语成绩(均为不超过 的自然数)。
如果某对学生 满足:
- 每一科成绩的分差都不大于 ;
- 总分分差不大于 ;
那么这对学生就是“旗鼓相当的对手”。
现在想知道这些同学中,哪些是“旗鼓相当的对手”,请输出他们的姓名。
所有人的姓名按照字典序给出。输出时也应按照字典序输出所有对手组合:
- 每组组合中,第一个姓名的字典序应小于第二个姓名;
- 如果两个组合中第一个姓名不同,则第一个姓名字典序小的先输出;
- 如果两个组合中第一个姓名相同但第二个姓名不同,则第二个姓名字典序小的先输出。
输入格式
第一行输入一个正整数 ,表示学生个数。
接下来 行,每行首先输入一个字符串表示学生姓名,再输入 个自然数表示语文、数学、英语成绩。字符串和整数之间均用空格分隔。
输出格式
输出若干行,每行 个以空格隔开的字符串,表示一组旗鼓相当的对手。
注意按题目描述中的顺序输出。
样例输入
3
fafa 90 90 90
lxl 95 85 90
senpai 100 80 91
样例输出
fafa lxl
lxl senpai
样例解释
共有 名同学:
fafa的语文、数学、英语成绩分别为 ,总分为 ;lxl的语文、数学、英语成绩分别为 ,总分为 ;senpai的语文、数学、英语成绩分别为 ,总分为 。
对于 fafa 和 lxl:
- 三科分差分别为 ,都不大于 ;
- 总分分差为 ,不大于 。
所以他们是旗鼓相当的对手。
对于 fafa 和 senpai:
- 语文分差为 ,大于 。
所以他们不是旗鼓相当的对手。
对于 lxl 和 senpai:
- 三科分差分别为 ,都不大于 ;
- 总分分差为 ,不大于 。
所以他们是旗鼓相当的对手。
因此,按字典序输出这两组对手,得到样例输出中的两行。
数据范围
姓名长度不超过 ,语文、数学、英语成绩均为不超过 的自然数。