代码
#include<bits/stdc++.h>
#define z int
#define ll long long
#define maxn 5050
using namespace std;
struct str
{
int k,s;
}s[maxn];
bool cmp(str a,str b)
{
if(a.s<b.s)
return a.s>b.s;
else if(a.s>b.s)
return a.s>b.s;
else
if(a.k>b.k)
return a.k<b.k;
else if(a.k<b.k)
return a.k<b.k;
}
int main()
{
ll n,m,sp,num;
cin>>n>>m;
for(z i=1;i<=n;i++)
{
cin>>s[i].k>>s[i].s;
}
sp=floor(m*1.5);
sort(s+1,s+n+1,cmp);
for(z i=1;i<=sp;i++)
{
num++;
}
cout<<sp<<' '<<num<<endl;
for(z i=1;i<=num;i++)
{
cout<<s[i].k<<' '<<s[i].s<<endl;
}
return 0;
}
//int dimier(int x)
//{
// double l=1,r=n,m;
// while(l<=r)
// {
// m=(l+r)/2;
// if(x<a[m])
// r=m-1;
// else if(x>a[m])
// l=m+1;
// else if(x==a[m])
// l=m+1;
// }
// if(a[m]==x)
// return l-1;
// else
// return -1;
//}