课堂练习

设计思想:

1、利用一一相消的方法,一一对应的消除ID不同的帖子,因为水王发帖数目超过帖子数目的一半,所以最后剩下的帖子肯定是水王的帖子,借此可以找出水王;

2、因为水王每个帖子都回,所以从第一个帖子开始,假设每个回帖的都是水王,然后对比第二个帖子,回复了第一个帖子而没有回复第二个帖子的ID肯定不是水王的,以此类推,利用排除法最终可找到水王,若最终剩下的不止一人,可以利用ID统计各自发布的帖子,帖子数最多的肯定是水王;

这里采用第一种方法。

代码:

package text;
import java.util.Scanner;
public class Text_1_shuiwang {
	public static void main(String args[])
	{
		Scanner in=new Scanner(System.in);
		int M;
		System.out.println("请输入帖子总数");
		M=in.nextInt();
		String A[]=new String[M];
		int i,j=0;
		System.out.println("请输入ID:");
		for(i=0;i<M;i++)
		{
			A[i]=in.next();
		}
		String S=A[0];
		for(i=1;i<M-1;i++)
		{
			if(S.equals(A[i+1]))
			{
				j=1;
			}
			else
			{
				j=-1;
			}
			if(j==0)
			{
				S=A[i];
				j=1;
			}
		}
		System.out.println("水王是:"+S);
		in.close();
	}
}

  

结果截图:

个人总结:

一一相消比较麻烦,其他还好

原文地址:https://www.cnblogs.com/dawn-sky/p/5513012.html