随着论坛的发展,管理员发现水王没有了,但是统计结果表明,有三个发帖很多的ID。据统计他们的发帖数量超过了1/4,你能从发帖列表中快速找到他们吗?

 

设计思路:这次还是选择hash表,觉得这个用起来效率并不是很差,而且代码更加简洁,更加易懂:

 1 #include<iostream>
 2 #include<map>
 3 #include<string>
 4 using namespace std;
 5 int main(){
 6     int n;
 7     map<string,int> hash;
 8     cin>>n; //帖子的总数量
 9     string id,ans[10];
10     int x=0;
11     for(int i=0;i<n;i++){
12         cin>>id;
13         if(hash.count(id)==0){
14             hash[id]=1;
15         }else {
16             hash[id]++;
17         }
18         if(hash[id]>n/4){
19             ans[x++]=id;
20         }
21     }
22     if(x==0)cout<<"不存在水王!"<<endl;
23     else {
24         for(int i=0;i<x;i++){
25             cout<<"水王"<<i<<""<<ans[i]<<endl; 
26         }    
27     } 
28     return 0;
29 } 

 posted on 2016-05-19 09:29  yifan2016  阅读(138)  评论(0编辑  收藏  举报