课堂练习
设计思想:
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(); } }
结果截图:
个人总结:
一一相消比较麻烦,其他还好