题解 | #成绩排序#
成绩排序
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]); } } } }