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

    设计思想:

         既然三个水龙王每个的发帖数大于四分之一,那就四个帖子一组,假设前三个ID为水龙王,两个数组,一个记录三个水龙王ID,一个记录三个水龙王各自ID数目,将每个ID与假设龙王的ID相比较,如相同,则在相同的龙王ID总数加一,若与三个假设龙王都不相同,则假设的三个龙王各自总数减一,直到减为0,更换龙王ID。

    代码实现:    

    import java.util.Scanner;

    public class Longwang2 {

      public static void main(String []args){

         Scanner reader=new Scanner(System.in);

         System.out.println("请输入ID总数:");

         int sumID=reader.nextInt();

         int ID[]=new int[sumID];//存储所有ID的数组ID[]

         System.out.println("请依次输入ID:");

         for(int i=0;i<sumID;i++)

         {

            ID[i]=reader.nextInt();

         }

         int LongWang[]=new int[3]; //数组LongWang[]储存三个龙王ID

         int countLong[]=new int[3];//数组countLong[]存储三个龙王ID各自总数

         countLong[0]=countLong[1]=countLong[2]=0;//初始化龙王ID各自总数为0

         for(int i=0;i<sumID;i++) 

         {

            if(countLong[0]==0)  //假设前三个帖子ID是龙王

            {

                LongWang[0]=ID[i];

               countLong[0]++;

            }

            else if(countLong[1]==0)

            {

               LongWang[1]=ID[i];

               countLong[1]++;

            }

            else if(countLong[2]==0)

            {

               LongWang[2]=ID[i];

               countLong[2]++;

            }

            else if(ID[i]==LongWang[0]) //将帖子ID与龙王ID相比较,若相同,则龙王计数器加一

            {

               countLong[0]++;

            }

            else if(ID[i]==LongWang[1])

            {

               countLong[1]++;

            }

            else if(ID[i]==LongWang[2])

            {

               countLong[2]++;

            }

            else   //如果与三个龙王的ID都不同的话,则三个计数器都自减一

            {

               countLong[0]--;

               countLong[1]--;

               countLong[2]--;

            }

         }

         System.out.println("三个龙王ID分别是:");

         for(int i=0;i<3;i++)

         {

            System.out.print(LongWang[i]+" ");

         }

      }

    }

    实现截图:

     

    个人总结:

          编程要学会举一反三,有时类似的问题设计思想是不变的。

  • 相关阅读:
    python 发送带有附件的邮件
    【转】python的定时任务
    git 日常命令
    go之基础语法等相关内容-148
    redis集群等相关内容-147
    redis高级部分等相关内容-146
    sqlachemy之增删改查等相关内容-145
    flask之wtforms、信号、sqlalchemy等相关内容-144
    flask之上下文源码、flask-session、数据库连接池、flask-script等相关内容-143
    flask之中间件、蓝图、请求上下文等相关内容-142
  • 原文地址:https://www.cnblogs.com/jinpeigang/p/5520927.html
Copyright © 2011-2022 走看看