Codeforces Round #345 (Div. 2) B. Beautiful Paintings
2016-03-08 00:04
453 查看
B. Beautiful Paintings
time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
There are n pictures delivered for the new exhibition. The i-th painting has beauty ai. We know that a visitor becomes happy every time he passes from a painting to a more beautiful one.
We are allowed to arranged pictures in any order. What is the maximum possible number of times the visitor may become happy while passing all pictures from first to last? In other words, we are allowed to rearrange elements of a in any order. What is the maximum possible number of indices i (1 ≤ i ≤ n - 1), such that ai + 1 > ai.
Input
The first line of the input contains integer n (1 ≤ n ≤ 1000) — the number of painting.
The second line contains the sequence a1, a2, …, an (1 ≤ ai ≤ 1000), where ai means the beauty of the i-th painting.
Output
Print one integer — the maximum possible number of neighbouring pairs, such that ai + 1 > ai, after the optimal rearrangement.
Examples
input
5
20 30 10 50 40
output
4
input
4
200 100 100 200
output
2
Note
In the first sample, the optimal order is: 10, 20, 30, 40, 50.
In the second sample, the optimal order is: 100, 200, 100, 200.
本题的题意就不多做解释了,,讲讲我对本题的理解吧,本题就是一道简单的贪心题目。。但可能我的方法是你见过的最特殊的吧,,我的方法用到了基础的桶排序,,加上特判就完事了,,否则的话,,这道题你就等着wrong answer 吧。。。。其实有一个更牛逼的方法。。
下面是一种比较牛掰的方法
如果看完博客有所收获,,别忘了收藏我的博客地址哦。。。
time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
There are n pictures delivered for the new exhibition. The i-th painting has beauty ai. We know that a visitor becomes happy every time he passes from a painting to a more beautiful one.
We are allowed to arranged pictures in any order. What is the maximum possible number of times the visitor may become happy while passing all pictures from first to last? In other words, we are allowed to rearrange elements of a in any order. What is the maximum possible number of indices i (1 ≤ i ≤ n - 1), such that ai + 1 > ai.
Input
The first line of the input contains integer n (1 ≤ n ≤ 1000) — the number of painting.
The second line contains the sequence a1, a2, …, an (1 ≤ ai ≤ 1000), where ai means the beauty of the i-th painting.
Output
Print one integer — the maximum possible number of neighbouring pairs, such that ai + 1 > ai, after the optimal rearrangement.
Examples
input
5
20 30 10 50 40
output
4
input
4
200 100 100 200
output
2
Note
In the first sample, the optimal order is: 10, 20, 30, 40, 50.
In the second sample, the optimal order is: 100, 200, 100, 200.
本题的题意就不多做解释了,,讲讲我对本题的理解吧,本题就是一道简单的贪心题目。。但可能我的方法是你见过的最特殊的吧,,我的方法用到了基础的桶排序,,加上特判就完事了,,否则的话,,这道题你就等着wrong answer 吧。。。。其实有一个更牛逼的方法。。
#include<cstdio> #include<cstring> int a[1005]; int main() { int n; while(~scanf("%d",&n)) { memset(a,0,sizeof(a));//为了使用桶排序,所以要对每个数的个数进行清零 int num,flag=0;//flag用来记录找出的最大值 for(int i=0;i<n;i++) { scanf("%d",&num); a[num]++;//每找到一个数它在数组中的个数就加一 if(num>flag) { flag=num; } } int sum,sum1=0; for(int i=0;i<=1000;i++)//关键的实现贪心的步骤 { sum=0; for(int j=0;j<=flag;j++) { if(a[j]>0) { a[j]--; sum++; } } if(sum!=0)//减掉的一个自己仔细想想,,就是n个数之间增加了n-1 sum1+=(sum-1); else//进行特判,,表示已经不可能再增加了 { break; } } printf("%d\n",sum1); } return 0; }
下面是一种比较牛掰的方法
#include<cstdio> int a[1001],b,n,i,max; int main(){ scanf("%d",&n); for(i=1;i<=n;i++){ scanf("%d",&b); a[b]++; if(a[b]>max)max=a[b]; } printf("%d",n-max); return 0; }
如果看完博客有所收获,,别忘了收藏我的博客地址哦。。。
相关文章推荐
- Codeforces 651B Beautiful Paintings(不可思议的暴力)
- composer报错:Failed to decode response: zlib_decode(): data error
- codeforces 651B B. Beautiful Paintings
- Get Paid to Read Ads with 7 Most Trusted PTC Sites
- presenter on rails
- CodeForces - 630A Again Twenty Five! (水)
- cf#345-B - Beautiful Paintings-暴力
- Pacific Trails Resort案例分析(第二章)
- 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用
- Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
- http://blog.csdn.net/liang12360640/article/details/50350648
- InnoDB: Error: io_setup() failed with EAGAIN after 5 attempts
- 谈谈人工智能时代(AI)
- error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
- 工作流的项目 activity-login-context.xml Failed to read schema document
- mongodb new file allocation failure
- 51nod1305 Pairwise Sum and Divide
- 2016 cherish & set sail
- Resize images and save thumbnails
- Climbing Stairs