80分求助,看题解实在找不到错误
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
const int N = 5010;
int n,m,p;
struct student{
int id;
int ht;
}q[N];
bool cmp(student a,student b){
if(a.ht!=b.ht) return a.ht>b.ht;
return a.id<b.id;
}
int main(){
cin>>n>>m;
for(int i = 0;i<n;i++){
cin>>q[i].id>>q[i].ht;
}
sort(q,q+n,cmp);
int res = floor(m * 1.50);
cout<<q[res].ht<<' ';
for(int i = 0;i<n;i++){
if(q[i].ht>=q[res].ht){
p++;
}
}
cout<<p<<endl;
for(int i = 0;i<p;i++){
cout<<q[i].id<<' '<<q[i].ht<<endl;
}
return 0;
}