一、题目

一段时间之后,大水王消失了,出现了三个小水王,他们每一个人发帖数超过了总数的1/4.

要求:如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这三个小水王吗?
 
二、解题思路
将第一次找水王的套路扩展一下,每次删除四个不同的结点,最后就能得到三只水王
 
三、程序代码
 1 #include<iostream>
 2 #include<string>
 3 using namespace std;
 4 int main()
 5 {
 6     //建立数组
 7     string ID[100];
 8     string king[3] = {"!","!","!"};
 9     int m1=0,m2=0,m3=0;
10     int i, k, number;
11     cout << "请输入帖子个数:";
12     cin >> number;
13     if (number <= 0)
14     {
15         cout << "请重新输入:";
16         cin >> number;
17     }
18     cout << "输入发帖ID:"<<endl;
19     for (i = 0; i < number; i++)
20     {
21         cin >> ID[i];
22     }
23     //找水王
24     for (i = 0; i < number; i++)
25     {
26         if (ID[i] == king[0])
27         {
28             m1++;
29         }
30         else if (ID[i]==king[1])
31         {
32             m2++;
33         }
34         else if (ID[i] == king[2])
35         {
36             m3++;
37         }
38     }
39     return 0;
40 }