找水王2

  题目:随着论坛的发展,管理员发现水王没有了,但是统计结果表明,有三个发帖很多的ID。

           据统计他们的发帖数量超过了1/4,你能从发帖列表中快速找到他们吗?

设计思路:没人发帖数目都超过了1/4所以每五个帖子里面必有两个相同的ID把不同的ID消去即可

import java.util.*;
public class Findwater1 {
    public static void main(String args[])
    {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入ID的个数:");
        int a=sc.nextInt();
        int ID[]=new int[a];
        System.out.println("请输入ID");
        for(int i=0;i<a;i++)
        {
            ID[i]=sc.nextInt();
        }
        
        int idnull = -1;//定义一个不出在的ID
        int c[]=new int[3];//定义比较的数组
        int water[]=new int[3];//定义水王的数组
        
        water[0]=water[1]=water[2]=0;
        c[0]=c[1]=c[2]=idnull;
        
        for(int i=0;i<a;i++)
        {
            if(ID[i]==c[0])
            {
                water[0]++;
            }
            else if(ID[i]==c[1])
            {
                water[1]++;
            }
            else if(ID[i]==c[2])
            {
                water[2]++;
            }
            else if(water[0]==0)
            {
                water[0]=1;
                c[0]=ID[i];
            }
            else if(water[1]==0)
            {
                water[1]=1;
                c[1]=ID[i];
            }
            else if(water[2]==0)
            {
                water[2]=1;
                c[2]=ID[i];
            }
            else
            {
                water[0]--;
                water[1]--;
                water[2]--;
            }
        }
        
        System.out.println("三个水王分别是:");
        System.out.println(c[0]);
        System.out.println(c[1]);
        System.out.println(c[2]);
    }
}
结果截图:

实验总结:

  由简到难,一点点分解问题到自己能解决的程度,在一点点完成。  

posted @ 2016-05-27 13:28  waitingforyou123  阅读(146)  评论(0编辑  收藏  举报