找水王

三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,
传说在论坛上有一个“水王”,他不但喜欢发帖,
还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。
如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,
你能快速的找到这个传说中的水王吗?
 
设计思想:刚开始想的是对帖子进行排序,然后最多的那个就是水王的ID,然后在老师的提示下
确定了以下的思路:
就是每遇到不同的帖子就消去,帖子相同就保留,最后剩下最多的就是水王的ID
 
代码实现:
import java.util.*;
public class Findwater {
	public static  void main(String args[]){
		Scanner sc =new Scanner(System.in);
		
		System.out.println("请输入ID的个数:");
		int a=sc.nextInt();
		int b[]=new int[a];
		System.out.println("请输入ID");
		for(int i=0;i<a;i++)
		{
			b[i]=sc.nextInt();
		}
		
	    int	water=b[0];
	    int k=1;
	    for(int i=1;i<a;i++)
	    {
	    	if(water!=b[i])
	    	{
	    		k=k-1;
	    		if(k<=0)
	    		{
	    			water=b[i+1];
	    			k=1;
	    			i++;
	    		}
	    	}
	    	else
	    	{
	    		water=b[i];
	    		k=k+1;
	    	}
	    }
	    
	    System.out.println("水王为"+water);
	}
}

  实现截图:

实验总结:

有的时候不一定要按常规的方法去解决问题,还要开拓思路,去想一些简单的方法去解决问题。

原文地址:https://www.cnblogs.com/sz20142898/p/5502833.html