CCF用脚造数据
查看原帖
CCF用脚造数据
705132
xwd325楼主2024/11/6 21:53

rt,本人考场大样例全过75pts 代码如下,求调

#include<iostream>
#include<cmath>
#include<iomanip>
#include<algorithm>
#include<queue>
#include<vector>
using namespace std;
int a[100005],cnt[100005],ans[100005];
int main()
{
	freopen("duel.in","r",stdin);
	freopen("duel.out","w",stdout);
	int n,x=0,now=1,sum=0;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		cnt[a[i]]++;
		if(cnt[a[i]]==1)
		{
			x++;
			ans[x]=a[i];
		}
	}
	sort(ans+1,ans+x+1);
	int i=2;
	while(now<i&&i<=x)
	{
		if(cnt[ans[now]]>=cnt[ans[i]])
		{
			cnt[ans[now]]-=cnt[ans[i]];
			sum+=cnt[ans[i]];
			i++;
		}
		else
		{
			sum+=cnt[ans[now]];
			now++;
		}
		if(now==i)
		{
			i++;
		}
	}
	cout<<n-sum<<endl;
	return 0;
}
2024/11/6 21:53
加载中...