[Home|Training|Problems|Contests|C Language] | [Login|Register] |
Problems Status Rank Statistics |
Problem C
Welcome
Time Limit: 1000ms
Memory Limit: 65536kb Description
每年的11月末是科大ACM招新的季节,老队员们,教练们会举办一场迎新赛来吸纳新人,现在比赛结束了,成绩出来了,但是USTCOJ的排序功能忽然挂了,所以在这么多参赛选手的情况下,我们很难知道谁获得了冠军,所以希望你来帮忙写个排序程序,帮助我们。你需要实现的功能是这样的,每个选手有一个Rating,表示他在比赛中的表现,(只有这一个比较标准),Rating越大表现越好,你需要根据Rating来给选手排序,如果有两个选手Rating相同,那么按选手ID的字典序排序,字典序小的在前面。此外,我们还需要你计算一下,对于每个人,所有Rating小于等于他(包括他自己)的人数的占总人数百分比。(参见样例)
Input
多组输入,每组输入由两部分组成,一行单独的N(N <= 3000),表示参赛总人数,接下来的N行每行有两个信息,选手ID以及Rating。ID和Rating用一个空格分开,每个人的ID只包含大小写字母,标点和数字等(所有ID中出现的字符的ASCII码在0--127之间,且不包含空白符)保证不会出现相同ID,且ID长度不超过30。每个人的 Rating 在0到3500之间。输入以N = 0结束。不用处理这一组。 Output
对每组输入,输出占N行,每行一个选手,输出他的ID,Rating,以及要求的百分比,百分比保留两位小数(四舍五入)。具体见样例。
Sample Input
10 mynameisverylong 1919 tourist 3250 cxlove 1926 ilovecbx 1715 MYT_angel 1710 WJMZBMR 2673 wyh9346 1761 wilsonlym 1751 YQCMMD 1744 gaofushaui 1734 0 Sample Output
tourist 3250 100.00% WJMZBMR 2673 90.00% cxlove 1926 80.00% mynameisverylong 1919 70.00% wyh9346 1761 60.00% wilsonlym 1751 50.00% YQCMMD 1744 40.00% gaofushaui 1734 30.00% ilovecbx 1715 20.00% MYT_angel 1710 10.00% Hint
字典序定义:从头开始比较两个字符串s,t,如果字符相同,继续比较下一个字符,直到字符不同,如果s[i] > t[i], s的字典序更大。注意tour的字典序小于
tourist。
Source
FTDaddy@ustc.acm
|