• 结对开发----找出“水王"


    一、题目

        三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。 如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?

    二、设计思路

       这道题的主要突破口在与水王的贴子超过了总帖子数的一半,所以在老师上课”消消乐模式“的启示下,有了灵感。

    三、实验代码

    复制代码
    #include<iostream.h>
    void main()
    {
        int arr[19]={2,2,1,3,1,2,1,5,2,2};  //假设的ID号
        int shuijun = 0; 
        int count=0;  //标记
        for(int i=0;i<9;i++)
        { 
            if(count == 0)
            { 
                shuijun = arr[i]; 
                count = 1; 
            } 
            else
            { 
                if(shuijun == arr[i]) 
                    count ++; 
                else  
                    count --; 
            } 
        }
        cout<<"水军的ID是"<<shuijun<<endl;
    }
    复制代码

    五、运行截图

    六、实验总结

        这道题给我的感受最深的就是思路想法远远优先于编程。一开始对这道题真是绞尽脑汁想办法去解决。可是思路总是对不上老师给的时间复杂度。最后老师提醒我们用消消乐的想法来思考。最终在队友的帮助下,完成了这个实验。真的很不容易。。。

  • 相关阅读:
    maven常用命令
    项目管理需要做的事情
    jinkins 部署过程
    怎么操作会导致MySQL锁表
    高性能Java代码的规范
    java8新特性(2)--接口的默认方法
    java8新特性1--Lambda表达式
    eclipse web项目
    js 0 "" null undefined
    Android分页加载
  • 原文地址:https://www.cnblogs.com/fan123/p/4448709.html
Copyright © 2020-2023  润新知