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

    一、题目要求

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

    二、设计思路

         (1) 我首先想到的是将帖子的ID都统计一下,然后在比较,最大的就会是水王的帖子,但是我的方法空间复杂度较高,便换了一种方法。

         (2) 有一种更为简单额一种思路,就是消消乐思想:既然水王的帖子为一半以上,那么将相邻的帖子删掉剩下的必定为水王的帖子

    #include<iostream>
    using namespace std;
    int main()
    {
    	int num[1000];
    	int i, n;
    
    	int count = 1;
    	cout << "输入ID个数:";
    	cin >> n;
    	cout << "输入ID:";
    	for (i = 0; i<n; i++)
    	{
    		cin >> num[i];
    		//cout<<num[i];
    
    	}
    	cout << endl;
    	int a = num[0];
    	for (i = 0; i<n; i++)
    	{
    		if (num[i] == a)
    		{
    			count++;
    
    		}
    		else
    		{
    			count--;
    		}
    		if (count == 0)
    		{
    			a = num[i];
    			count = 1;
    		}
    
    	}
    	cout << "水王的ID:" << a << endl;
    	return 0;
    }
    

      

      程序截图:

  • 相关阅读:
    centos 7常用需求
    python处理mysql的一些用法
    python下的queue
    2017-1-17不错的模块和工具
    wordpress钩子和钩子函数
    python中字典的使用
    linux下查看系统信息
    apk安全测试思路
    rhel 5.8 and 6.4 yum配置
    分布式文件系统
  • 原文地址:https://www.cnblogs.com/ly199553/p/5530666.html
Copyright © 2011-2022 走看看