20分求条
查看原帖
20分求条
1554563
bjcakioi楼主2025/1/26 23:22
#include<bits/stdc++.h>
using namespace std;
struct man{
	int id,grade;
}a[5050];
bool cmp(man a,man b){
	return a.grade>b.grade;
}
int main(){
	int people,plan;
	cin>>people>>plan;
	int y=floor(plan*1.5);
	for(int i=1;i<=people;i++){
		cin>>a[i].id>>a[i].grade;
	}
	sort(a+1,a+people+1,cmp);
	for(int i=1;i<people;i++){
		if(a[i].grade==a[i+1].grade&&a[i].id>a[i+1].id){
			swap(a[i],a[i+1]);
		}
	}
	int mianshifenshuxian=a[y].grade;
	int n=y;
	while(a[n].grade==a[y].grade&&a[n+1].grade==a[y].grade){
		n++;
	}
	cout<<mianshifenshuxian<<' '<<n<<endl;
	for(int i=1;i<=n;i++){
		cout<<a[i].id<<" "<<a[i].grade<<endl;
	}
	return 0;
}
2025/1/26 23:22
加载中...