找水王课堂练习

Posted sunmei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了找水王课堂练习相关的知识,希望对你有一定的参考价值。

1题目要求:

 

三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。

如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?

 

 

2 设计思路:

1首先如果每次删除两个不同的ID,那么,在剩下的ID列表中,“水王”ID出现的次数仍然超过总数的一半。

2重复这个过程,把ID列表中的ID总数降低,最后找到水王。

 

 

3源程序代码:

#include<iostream>
 #include<string>
 using namespace std;
 #define N 20
 
 void main()
 {
     int m = 0;
     string a[N], n;
         cout << "输入帖子的ID号:" ;
         for (int i = 0; i < N; i++)
         {
             cin >> a[i];
         };
         n = a[0];
         for (int i = 0; i < N; i++)
         {
             if (n == a[i])
         {
             m += 1;
         }
         else
             m -= 1;
         if (m < 0)
         {
             n= a[i];
         }
     }
         cout << "水王是:" << n ;
 }

4运行结果截图:

 

以上是关于找水王课堂练习的主要内容,如果未能解决你的问题,请参考以下文章

课堂练习找水王02

课堂练习--“找水王续"

课堂练习-找水王

课堂练习-找水王

课堂练习-找水王

课堂练习 找水王