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

    一、题目

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

    目超过了帖子数目的一半。 如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?但是随着论坛的发展,管理员

    发现水王没有了,但是统计结果表明,有三个发帖很多的ID。据统计他们的发帖数量超过了1/4,你能从发帖列表中快速的找到他们吗?

    二、代码

    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
        string shuiwang[3];//存储水王
        int num[3];//记录水王的出现的次数
        int NUM;
        cout<<"请输入帖子数量:";
        cin>>NUM;
        string *tie = new string[NUM];
        cout<<"输入"<<NUM<<"个贴子的主人:";
        for(int i=0;i<NUM;i++)
        {
            cin>>tie[i];
        }
        for(int i=0;i<3;i++)
        {
            shuiwang[i]=tie[i];
            num[i]=0;
        }
        for(int yi=3;yi<12;yi++)//运算
        {
            bool piPei=false;//用于判断是否下一个是否匹配
            for(int er=0;er<3;er++)//循环匹配判断
            {
                if(shuiwang[er]==tie[yi])
                {
                    num[er]++;
                    piPei=true;
                    break;//匹配,停止循环
                }
            }
            if(!piPei)//匹配不成功
            {
                bool er=false;//只替换一个shuiwang
                bool san=false;//用于判断是否有num【i】<0,有的话直接替换
                for(int liu=0;liu<3;liu++)
                {
                    if(num[liu]<0)
                        san=true;
                }
                if(!san)//没有num【i】<0,所有的num--
                {
                    for(int san =0;san<3;san++)
                        num[san]--;
                }
                for(int si=0;si<3;si++)
                {
                    if (num[si]<0&&er==false)//只替换一个shuiwang
                    {
                        shuiwang[si]=tie[yi];
                        num[si]=0;
                        er=true;
                    }
                }
            }
        }
        cout<<"小水王为:";
        for(int wu=0;wu<3;wu++)//输出小水王
        {
            cout<<shuiwang[wu]<<" ";
        }
        return 0;
    }

    运行结果:

  • 相关阅读:
    什么是X86和X86-64
    PyQt 5 的学习引言
    GraphQL实战篇(一)
    GraphQL基础篇
    .net之设计模式
    .net面向对象设计原则
    Entity Framework (EF) Core工具创建一对多和多对多的关系
    NLog组件
    给dao层注入jdbcTemplate时的一个强行bug(jdbcDaoSupport不要随便用!用了要记得!)
    使用工厂模式解耦和IoC思想
  • 原文地址:https://www.cnblogs.com/wsqJohn/p/5553321.html
Copyright © 2011-2022 走看看