洛谷链接:https://www.luogu.com.cn/problem/P1068
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int[] s=new int[105]; //保存某个成绩人数
int[][] k=new int[10005][105]; //用于保存,输出成绩和编号
int count=0; //分数线和能进的人数
int x=0; //分数线
int j=0;
Scanner in=new Scanner(System.in);
int n=in.nextInt(); //总人数
int m=in.nextInt(); //人数
m=(int) (m*1.5); //人数计算
for(int i=0;i<n;i++) {
int kk=in.nextInt(); //输入编号
int ss=in.nextInt(); //输入成绩
k[kk][ss]++; //计入
s[ss]++; //计入
}
//将分数达到的人录取,也刚好可以录取到最后一名重分的
for(j=100;count<m;j--) {
count+=s[j];
}
System.out.println(j+1+" "+count);
x=j+1; //记录分数线
//分数线内从大到小枚举
for(int i=100;i>=x;i--) {
for(int l=1000;l<=10000;l++) {
//在一个分数下搜报名号
if(k[l][i]!=0) {
System.out.println(l+" "+i);
}
}
}
}
}