题解
2024-02-24 20:20:28
发布于:广东
3阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
struct r{
string id;
int f;
};
bool cmp(r a,r b){
if(a.f != b.f)return a.f>b.f;
else return a.id<b.id;
}
int main(){
int n,m;
cin>>n>>m;
r a[n];
int b[110]={0};
for(int i=0;i<n;i++){
cin>>a[i].id>>a[i].f;
b[a[i].f];
}
int fsx,rs=0;
m=floor(m*1.5);
for(int i=100;i>=1;i--){
if(m<1) break;
for(int j=0;j<b[i];j){
rs++;
m--;
}
fsx=i;
}
sort(a,a+n,cmp);
cout<<fsx<<" "<<rs<<endl;
for(int i=0;i<n;i++){
if(a[i].f>=fsx){
cout<<a[i].id<<" "<<a[i].f<<endl;
}
}
return 0;
}
这里空空如也
有帮助,赞一个