1249: 排名
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:1
Solved:1
Description
考试终于结束了,学校准备按名次的高低给前10名发放奖品。考虑每个奖品的价值都不相同,所以在排名的时候不允许出现名次相同。学校制定了一下排名规则:本次考试共靠了k(k<=10)个科目,首先按k个科目的总分排名,总分高的排名靠前;总分相同的同学,按他们的科目1成绩比较,科目1成绩高的同学排名靠前;如果科目1的成绩依然相同,那么按照科目2的成绩比较,科目2成绩高的排名靠前;……以此类推,如果所有成绩都相同,那么安排学号排名,学号小的排名靠前。
对于学校如此庞大规模的学生数,这项排名工作变成一项艰巨而困难的任务,于是校长把本项任务交给了善于利用编程解决问题的你。
Input
第一行有2个整数,n和k。分别表示学校有n名学生,本次考试共考了k个科目。
接下来n行,每行k+1个整数,表示一位同学的信息,依次是该同学的学号,科目1成绩,科目2成绩,……科目k成绩。
Output
一行,共10个整数,即排名前10位同学的学号,每两个数字之间用一个空格隔开。
Sample Input Copy
11 1
1 30
2 70
3 80
4 90
5 10
6 50
7 15
8 35
9 39
10 32
11 18
Sample Output Copy
4 3 2 6 9 8 10 1 11 7
HINT
对于10%的数据,n<=100,k=1,且序号小的一定比序号打的成绩高;
对于30%的数据,n<=100,k=1,且所有成绩各不相同;
对于50%的数据,n<=100,k=1;
对于100%的数据,n<100,000 ,k<=10,所有科目成绩均<=100。