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

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

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

    分析:该题目中有一关键信息,水王发帖量超过总贴量的一半,如果循环一次的话,我们可以通过如下方式找到水王:

    首先,我们可以比较前两行信息,如果id相同,则都保持不变,再与下一行id比较;如果前两行id不相同,则删除这两行的信息,再比较后面两行信息的id,不断重复这个过程,把列表中总数降低,最后剩下的肯定是水王的ID。

    代码实现:

    #include<iostream>
    using namespace std;
    
    int main()
    {
        int num,arr[1000];
        int wknum=0, wkresult;//水王出现的次数和水王的ID
        int i;
    
        cout << "请输入帖子的数量:";
        cin >> num;
    
        cout << "请输入帖子ID:" << endl;
        for (i = 0; i < num; i++)
        {
            cin >> arr[i];
        }
      
        for (i = 0; i != num; i++)
        {
            if (wknum == 0)//没有出现相同的ID
            { 
                wkresult = arr[i];//就从当前ID重新开始
                wknum++;
            }
            else//出现相同ID
            { 
                if (wkresult == arr[i])
                { 
                    wknum++;
                }
                else
                {  
                    wknum--;
                }
            }
        }
    
        cout << "水王的ID为:" << wkresult << endl;    return 0;
    }
    

      

  • 相关阅读:
    5-1
    浅谈sql中的in与not in,exists与not exists的区别
    理解SQL SERVER中的分区表
    SQLSERVER SQL性能优化
    SQL Server Profiler使用方法
    SQL Server中的三种Join方式
    执行计划
    执行计划sql
    INSERT INTO SELECT
    设计模式学习笔记-单例模式
  • 原文地址:https://www.cnblogs.com/125418a/p/13085453.html
Copyright © 2011-2022 走看看