0分求助,玄三关
查看原帖
0分求助,玄三关
1002361
Foraver楼主2024/4/18 22:03
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,a[100005],b[100005],c[100005],siz,ans=1;
bool cmp(int x,int y){return x>y;}
signed main()
{
	scanf("%lld",&n);siz=n;
	for(int i=1;i<=n;i++)
	{
		scanf("%lld",&a[i]);
		b[a[i]]++;
	}
	for(int i=1;i<=n;i++)c[i]=b[a[i]];
	sort(c+1,c+n+1,cmp);
	for(int i=1;i<=n;i++)
	{
		if(c[i]*2<siz)ans++,siz-=c[i]*2-1,n-=(c[i]*2-1);
	}
	cout<<ans;
 	return 0;
}

2024/4/18 22:03
加载中...