#include<bits/stdc++.h>
using namespace std;
int i, n, m, f, num, k[5010], s[5010], sub[5010];
bool cmp(int a, int b) {
	if (s[a] == s[b]) {
		return k[a] < k[b];
	} else {
		return s[a] > s[b];
	}
}
int main() {
	cin >> n >> m;
	for (int i = 1; i <= n; i++) {
		cin >> k[sub[i] = i] >> s[i];
	}	
	sort(sub + 1, sub + n + 1, cmp);
	f = s[sub[int(m * 1.5)]];
	for (int i = 1; s[sub[i]] >= f; i++) {
		num++;
	}
	cout << f << " " << num << endl;
	for (int i = 1; s[sub[i]] >= f; i++) {
		cout << k[sub[i]] << " " << s[sub[i]] << endl;
	}
	return 0;
}
哪位大佬,可以给我讲讲这份代码,尤其是
cin >> k[sub[i] = i] >> s[i];
里面k数组的输入是什么意思,还有上面的那个cmp函数,对应下面的sort排序。蟹蟹