题解 | #成绩排序#

成绩排序

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
            Map<Integer,String> map= new HashMap<>();
            int n =in.nextInt();
            int flag = in.nextInt();
            int[][] arr=new int[n][2];
            for(int i=0;i<n;i++){
                String name =in.next();
                int score= in.nextInt();
                arr[i][0]=i;
                arr[i][1]=score;
                map.put(i,name);
            }

            Arrays.sort(arr, (o1,o2) ->{
                if(flag==0){
                    return o2[1]-o1[1];
                }else{
                    return o1[1]-o2[1];
                }
            });

            for(int[] a: arr){
                System.out.println(map.get(a[0])+" "+a[1]);
            }
            
        }
    }
}

全部评论

相关推荐

头像
04-09 14:29
Java
点赞 评论 收藏
转发
点赞 1 评论
分享
牛客网
牛客企业服务