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

    一、题目

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

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

    二、设计思想

       从头到尾遍历帖子列表,比较相邻两个id,若相同,则记相同的id有几个,否则,将两个id消掉,同时计数减一。记录三个id。

    三、源代码

    #include<iostream.h>

    int main()

    {

        int arry[16]={1,2,3,3,2,2,2,2,3,3,4,4,4,4,3,4};

        int id1=arry[0],id2=arry[1],id3=arry[2];

        int k1=0,k2=0,k3=0;

        for(int i=0;i<15;)

        {

            if(id1==arry[i])

            {

                id1=arry[i];

                k1++;

                i++;

            }

            else if(arry[i]==id2)

            {

                id2=arry[i];

                k2++;

                i++;

            }

            else if(arry[i]==id3)

            {

                id3=arry[i];

                k3++;

                i++;

            }

            else

            {

                k1--;

                if(k1<1)

                {

                    id1=arry[i+1];

                    k1=0;

                }

                if(k2<1)

                {

                    id2=arry[i+1];

                    k2=0;

                }

                if(k3<1)

                {

                    id3=arry[i+1];

                    k3=0;

                }

                i++;

            }

        }

        cout<<id1<<"  "<<id2<<"  "<<id3<<"  ";

        return 0;

    }

    四、结果截图

     

    五、实验心得

    这次实验题目不难,但是想想出好的解决方案却不容易,做完实验后,我认为以后遇到问题要多从不同的角度思考。

  • 相关阅读:
    (十四)配置的热更新
    (十三)在ASP.NET CORE中使用Options
    (十二)Bind读取配置到C#实例
    【转载】ViewState的用法
    【转载】Web Service和WCF的到底有什么区别
    【转载】小小的公共库,大大的耦合,你痛过吗?
    【转载】ASP.NET应用程序与页面生命周期
    【转载】分布式数据库架构--分库、分表、排序、分页、分组、实现
    【转载】ASP和ASP.NET根本区别
    【转载】聊一聊C#的Equals()和GetHashCode()方法
  • 原文地址:https://www.cnblogs.com/weaponx/p/4583096.html
Copyright © 2011-2022 走看看