【CodeForces】[651B]Beautiful Paintings

文章字数:191

问题描述

问题分析

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

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#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\n",res);
	}
	return 0;
}

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

该内容采用 CC BY-NC-SA 4.0 许可协议。

如果对您有帮助或存在意见建议,欢迎在下方评论交流。

加载中...