zoukankan      html  css  js  c++  java
  • 寻找水王2

    随着论坛的发展,管理员发现水王没有了,但是统计结果表明,有三个发帖很多的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 } 

  • 相关阅读:
    pair
    非整除集合
    集合 set
    实现字通配符*
    vector
    矩阵及其初等变换
    求数组中连续子数组(最少有一个元素)的最大和。
    最长上升序列(Lis)
    st表求区间最大值
    [Noip2015] 信息传递
  • 原文地址:https://www.cnblogs.com/yifan2016/p/5609459.html
Copyright © 2011-2022 走看看