题解 | #成绩排序#

成绩排序

https://www.nowcoder.com/practice/8e400fd9905747e4acc2aeed7240978b

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            int a = Integer.parseInt(in.nextLine());
            int b = Integer.parseInt(in.nextLine());
            List<Integer> list = new ArrayList<>();
            Map<Integer,List<String>> map = new HashMap<>();
            for(int i=0;i<a;i++){
                String[] str = in.nextLine().split(" ");
                int fen = Integer.parseInt(str[1]);

                if(map.get(fen)==null) {
                    List<String> gg = new ArrayList<>();
                    gg.add(str[0]);
                    map.put(fen,gg);
                }else{
                    map.get(fen).add(str[0]);
                }
                list.add(fen);
            }
            Collections.sort(list);
            if(b==0)Collections.reverse(list);
            int sum =0;
            for(int i = 0;i<list.size();i++){
                if(i>0&&list.get(i)==list.get(i-1))sum++;
                else sum = 0;
                System.out.println(map.get(list.get(i)).get(sum)+" "+list.get(i));
            }
        }
    }
}

全部评论

相关推荐

01-04 07:53
门头沟学院 C++
心愿便利贴:工作了以后回头再看待这个问题,从客观的视角来讲是因为每个人对自己的要求不同,学习好的人对自己的要求很高,所以觉得考不好就天塌了,认为自己学习好并且值得一份好工作的人也是一样,找不到符合自己预期的工作肯定也会觉得是侮辱,牛客上有很多名校大学生,肯定会存在这种好学生心态啊,“做题区”从来都不是贬义词,这是大部分普通人赖以生存的路径,这个有什么好嘲讽的,有“好学生心态”没有错,但是不要给自己太大的压力了
点赞 评论 收藏
分享
黑皮白袜臭脚体育生:五宿大战是吧,死去的记忆还在攻击我
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务