水,直接模拟排序。
#include<bits/stdc++.h>
using namespace std;
struct stu{
int a,id;
}a[10005];
int n,m,sum;
bool cmp(stu x,stu y){
if(x.a!=y.a) return x.a>y.a;
return x.id<y.id;
}
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i].id>>a[i].a;
}
sort(a+1,a+n+1,cmp);
cout<<a[m*3/2].a<<" ";
for(int i=1;i<=n;i++){
if(a[i].a>=a[m*3/2].a) sum++;
}
cout<<sum<<"\n";
for(int i=1;i<=sum;i++) cout<<a[i].id<<" "<<a[i].a<<"\n";
return 0;
}
暂无评论