HJ68 成绩排序 | 题解

import java.util.Arrays;
import java.util.HashMap;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        HashMap<Integer, String> map = new HashMap<>();
        while (in.hasNext()) {
            int n = Integer.parseInt(in.nextLine());
            int flag = Integer.parseInt(in.nextLine());
            int[][] score = new int[n][2];
            for (int i = 0; i < n; i++) {
                String[] strs = in.nextLine().split(" ");
                score[i][0] = i;
                score[i][1] = Integer.parseInt(strs[1]);
                map.put(i, strs[0]);
            }
            Arrays.sort(score, ((o1, o2) -> {
                if (flag == 0) {
                    return o2[1] - o1[1];
                } else {
                    return o1[1] - o2[1];
                }
            }));
            for (int i = 0; i < n; i++) {
                System.out.println(map.get(score[i][0]) + " " + score[i][1]);
            }
        }
    }
}

全部评论

相关推荐

安徽省移动公司 IT部门 一年税前14w
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务