【CodeForces】[651B]Beautiful Paintings

这里写图片描述

刚开始以为是简单的排序
后来发现是重新排列后
只要有
a[i+1]>a[i]变使cnt++
所以最优排列方法可以是
类似于12312312323333这种

#include<stdio.h>
#include<string.h>
int a[1020];
int main() {
    int n;
    while(scanf("%d",&n)!=EOF) {
        int cnt=0;
        memset(a,0,sizeof(a));
        for(int i=0; i<n; i++) {
            int t;
            scanf("%d",&t);
            a[t]++;
        }
        int res=0;
        while(n) {
            for(int i=1; i<1020; i++) {
                if(a[i]) {
                    res++;
                    n--;
                    a[i]--;
                }
            }
            res--;
        }
        printf("%d
",res);
    }
    return 0;
}

题目地址:【CodeForces】[651B]Beautiful Paintings

原文地址:https://www.cnblogs.com/BoilTask/p/12569555.html