题目链接:http://codeforces.com/contest/589

I题:水题签到。

#include<bits/stdc++.h>
#define REP(i,a,b) for(int i=a;i<=b;i++)
#define MS0(a) memset(a,0,sizeof(a))
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1

using namespace std;

typedef long long ll;
const int maxn=1000100;
const int INF=(1<<29);

int cnt[maxn];
int n,k,a;

int main()
{
    //freopen("in.txt","r",stdin);
    while(cin>>n>>k){
        MS0(cnt);
        REP(i,1,n) scanf("%d",&a),cnt[a]++;
        int x=n/k,ans=0;
        REP(i,1,k){
            ans+=abs(cnt[i]-x);
        }
        cout<<ans/2<<endl;
    }
    return 0;
}
View Code

相关文章: