题解 | 成绩排序
成绩排序
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);
int n = Integer.parseInt(in.nextLine());
int op = Integer.parseInt(in.nextLine());
String[][] s = new String[n][3];
int x = 0;
while (in.hasNextLine()) {
String[] s1 = in.nextLine().split("\\s+");
s[x][0] = s1[0];
s[x][1] = s1[1];
s[x][2] = x + "";
x++;
}
if (op == 1) {
Arrays.sort(s, (a, b)-> {
if (Integer.parseInt(a[1]) != Integer.parseInt(b[1])) {
return Integer.parseInt(a[1]) - Integer.parseInt(b[1]);
} else {
return Integer.parseInt(a[2]) - Integer.parseInt(b[2]);
}
});
} else if (op == 0) {
Arrays.sort(s, (a, b)-> {
if (Integer.parseInt(a[1]) != Integer.parseInt(b[1])) {
return Integer.parseInt(b[1]) - Integer.parseInt(a[1]);
} else {
return Integer.parseInt(a[2]) - Integer.parseInt(b[2]);
}
});
}
for(int i = 0; i < n; i++){
System.out.print(s[i][0] + " ");
System.out.println(s[i][1]);
}
}
}
查看6道真题和解析