码迷,mamicode.com
首页 > 其他好文 > 详细

找水王2

时间:2016-05-27 16:40:15      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

一:程序设计背景

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

 二:设计思想

    此问题跟找水王1类似,只不过从1:1的消除变成了3:1的消除,其他的count加法都类似。

三:代码实现

//寻找水王2
//信1405-1班   20142966  黄伟鹏
import java.util.Scanner;
public class find2 
{
    public static void main(String[] args) 
    {
        int i,Number;
        System.out.println("请输入帖子总数:");
        Scanner in=new Scanner(System.in);
        Number=in.nextInt();
        int list[]=new int[Number];    //定义一个长度为帖子长度的数组
        int count[]=new int[3];    //定义一个分别对三个水王重复值进行计数的数组
        int middle[]=new int[3];    //定义一个分别对三个水王进行赋值的中间数组
        System.out.println("请输入帖子的ID");
        Scanner t=new Scanner(System.in);
        for(i=0;i<Number;i++)     //将帖子ID赋值给数组
        {
            list[i]=t.nextInt();
        }
        for(i=0;i<3;i++)    //将计数数组初始化
        {
            count[i]=0;
        }
        for(i=0;i<Number;i++)
        {
            if(middle[0]==list[i])
            {
                count[0]++;
            }
            else if(middle[1]==list[i])
            {
                count[1]++;
            }
            else if(middle[2]==list[i])
            {
                count[2]++;
            }
            else if(count[0]==0)
            {
                count[0]++;
                middle[0]=list[i];
            }
            else if(count[1]==0)
            {
                count[1]++;
                middle[1]=list[i];
            }
            else if(count[2]==0)
            {
                count[2]++;
                middle[2]=list[i];
            }
            else
            {
                count[0]--;
                count[1]--;
                count[2]--;
            }
        }
        System.out.println("第一个水王的ID是 :     "+middle[0]);    
        System.out.println("第二个水王的ID是 :     "+middle[1]);    
        System.out.println("第三个水王的ID是 :     "+middle[2]);    
    }

}

四:实现截图

技术分享                       技术分享                              技术分享

五:个人总结

   此题有数种方法可以实现,但题中要求快速找到即算法简便,只要将帖子数最多的ID找到即可。

 

找水王2

标签:

原文地址:http://www.cnblogs.com/xiaoabu/p/5534728.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!