HDU 5038 Grade(水~)
来源:互联网 发布:pdg2pdf for mac 编辑:程序博客网 时间:2024/05/16 17:18
Description
用给出的公式s=10000-(100-w)^2(w表示蘑菇的质量)求出每个蘑菇的得分,求出现次数最多的得分,如果有多个分数出现的次数一样多,且还有其他的分数,则把这些出现次数最多的分数按升序输出;否则,输出“Bad Mushroom”
Input
第一行为用例组数T,每组用例第一行为蘑菇数量n,第二行输入n个整数表示这n个蘑菇的质量
Output
对于每组用例,输出出现次数最多的蘑菇的分数,如果有多个分数出现的次数一样多,且还有其他的分数,则把这些出现次数最多的分数按升序输出;否则,输出“Bad Mushroom”
Sample Input
3
6
100 100 100 99 98 101
6
100 100 100 99 99 101
6
100 100 98 99 99 97
Sample Output
Case #1:
10000
Case #2:
Bad Mushroom
Case #3:
9999 10000
Solution
简单排序题,开一个结构数组struct{count,value},count表示分数为value的蘑菇的数量,排完序之后根据不同情况输出即可
Code
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;struct node{ int count; int value;}s[111111];int vis[111111];int cmp(node a,node b){ if(a.count==b.count)//数量相同按分数升序排 return a.value<b.value; return a.count>b.count;//数量不同按数量降序排 }int main(){ int t; scanf("%d",&t); for(int test=1;test<=t;test++) { int n; scanf("%d",&n); int k=0; memset(s,0,sizeof(s));//初始化 memset(vis,0,sizeof(vis));//初始化 for(int i=0;i<n;i++) { int d; scanf("%d",&d); d=10000-(100-d)*(100-d); if(!vis[d])//没有出现过这个得分的蘑菇 { vis[d]++;//该得分出现的次数加一 //记录这种得分的蘑菇 s[k].count=0;//初始化数量为0 s[k++].value=d; } else//出现过这个得分的蘑菇则直接将这个得分的出现次数加一即可 vis[d]++; } for(int i=0;i<k;i++)//记录每种得分出现的次数 s[i].count=vis[s[i].value]; sort(s,s+k,cmp);//排序 printf("Case #%d:\n",test); int m=1; for(int i=0;i<k-1;i++)//统计相同得分的蘑菇数量 if(s[i].count==s[i+1].count) m++; else break; if(m==k&&k!=1)//所有蘑菇的分数相同且蘑菇数量不是一 printf("Bad Mushroom\n"); else { //降序输出出现次数相同的分数 printf("%d",s[0].value); int i=1; while(s[i].count==s[0].count) printf(" %d",s[i++].value); printf("\n"); } } return 0;}
0 0
- hdu 5038 Grade(水)
- HDU 5038 Grade(水~)
- HDU 5038 Grade(数学)
- hdu - 5038 - Grade(模拟)
- HDU 5038 Grade(哈希水题)
- hdu 5038 Grade(分级)
- HDU-#5038 Grade(模拟+Hash)
- hdu 5038 Grade(北京网络赛)
- HDU 5038 Grade
- HDU - 5038 Grade
- [ACM] hdu 5038 Grade
- hdu 5038 Grade(水题)
- hdu 5038 Grade
- HDU 5038 Grade
- HDU 5038Grade
- HDU 5038 Grade
- HDU 5038 Grade
- HDU 5038 Grade
- thinkphp视图模型 视图必须是真是存在的表
- aac (高级音频编码)
- 实训一周感受
- MFC画图
- Android Camera open流程
- HDU 5038 Grade(水~)
- IOS之分析网易新闻存储数据(CoreData的使用,增删改查)
- iOS开发- UICollectionView详解+实例
- css3动画,设置动画基点
- 使用sizeof()计算数组长度
- qq聊天小界面设计之注意事项
- FastJson---高性能JSON开发包
- hibernate一对多关联映射—单向
- Git的使用六(撤销修改)仅限Mac亲测