打表学神再次入镜

魈凯KBS  •  5个月前


include <bits/stdc++.h>

using namespace std;

struct dp//排名结构体

{

int name,sc;

};

bool fuck(dp a,dp b)

{

if(a.sc==b.sc&&a.name>b.name) return a.name>b.name;//成绩相等

else return a.sc<b.sc;

}

int main()

{ int n,m;

cin>>n>>m;

dp a[n+4];

for(int i=0; i<n; i++)

{

cin>>a[i].name>>a[i].sc;

}

sort(a,a+n,fuck);//排序

int fir=floor(m*3/2);//输出个数

int cnt=0;

register int i;//把i存下来

for(i=n-1; i>=0; i--)

{

if(cnt==fir) break;

if(a[i].sc>=fir) cnt++;

}

cnt=0;//重新数个数

i+=1;

for(int j=n-1; j>=0; j--)

{

if(a[j].sc>=a[i].sc) cnt++;

}

cout<<a[i].sc<<' '<<cnt<<'\n';

for(int j=n-1; j>=0; j--)

{

if(a[j].sc>=a[i].sc) cout<<a[j].name<<' '<<a[j].sc<<'\n';

}

return 0;

}


Comments: