关于B题
  • 板块学术版
  • 楼主SJZ2010
  • 当前回复6
  • 已保存回复6
  • 发布时间2023/7/15 18:04
  • 上次更新2023/11/3 09:40:30
查看原帖
关于B题
809729
SJZ2010楼主2023/7/15 18:04
#include <bits/stdc++.h>

using namespace std;

int n;
int k;
int a[1000005],t[1000005],maxt,cnt;

signed main(){
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        t[a[i]]++;
    }
    if(n==0){
        cout<<0;
        return 0;
    }
    for(int i=1;i<=n;i++){
        maxt=max(maxt, t[i]);
    }
    for(int i=1;i<=n;i++)
        if(t[i]==maxt)
            cnt++;
    if(k>=maxt-k/cnt||k>=n/2+n%2){
        cout << "pigstd";
        return 0;
    }
    int ans=0;
    for(int i=1;i<=n;i++){
        if(t[i]==0)
            continue;
        if(maxt-k/cnt<=t[i]+k)
            ans++;
    }
    cout<<ans;
    return 0;
}

想出了hack

16
1 1 1 1 1 1 2 2 2 2 3 3 3 4 4 5

但是不会改QAQ,求助 dalaodalao 们

2023/7/15 18:04
加载中...