求助
查看原帖
求助
547359
jiaheng1103楼主2024/10/11 17:25
#include<bits/stdc++.h>
using namespace std;
struct node{
	int f;
	string name;
}a[5020];
bool cmp(node a,node b)
{
	if (a.f==b.f)
		return a.name<b.name;
	return a.f>b.f;
}
int main()
{
	int n,m,i,j,sum=0,k,o=0;
	cin>>n>>m;
	for (i=1;i<=n;i++)cin>>a[i].name>>a[i].f;
	sort(a+1,a+1+n,cmp);
	m*=1.5;
	cout<<a[m].f<<' ';
	for (k=1,i=1;k<=m;k++,i++)
		{
		if (a[i].f==a[i+1].f)o=1;
		else o=0;
		while (a[i].f==a[i+1].f)i++;
		if (o==1)i--;
		}
	cout<<i<<endl;
	for (k=1;k<i;k++)
		cout<<a[k].name<<' '<<a[k].f<<endl;
}
2024/10/11 17:25
加载中...