找水王

一、题目要求

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

      如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者ID在其中,请设计算法快速找到这个传说中的“水王”。

二、设计思路

  程序的设计思路大体就是,首先设2个变量,将第一个数暂时给shuiwang这个变量并且和下一个数比较,如果相同则用一个X变量自加一,不同则减一;如此循环,如果遇到不同时,一直减减减,x变为0,shuiwang又被新的数覆盖,以此类推,找到最终的水王ID。

三、源代码

 

 #include "stdafx.h"  

int findshuiwang(int arrID[],int num)
{
    int shuiwang;
    int x;
    for(int i=x=0;i<num;i++)
    {
        if(x==0)
        {
             shuiwang=arrID[i],x=1;
         }
        else
         {
             if(shuiwang==arrID[i])
            {
                ++x;
            }
             else
             {
                --x;
            }
        }
     }

printf("这个“水王”的ID就是:");
    printf("%d\n",shuiwang);
     return shuiwang;
 }
    
 
 
 int main(int argc, char* argv[])
 {
     int arry[6]={11110,11110,11110,11110,11112,11112};
    findshuiwang(arry,6);
     return 0;
 }

四、实验截图

五、实验总结

通过此次程序的训练,我们学到了不少东西,在克服困难的过程中,感受到了前所未有的乐趣。

posted @ 2015-05-26 20:43  dkjjjj  阅读(123)  评论(0编辑  收藏  举报