设计思想:
首先输入帖子总数,然后再依次输入发帖者和回帖者的id;
假设第一个id就是水王,然后记发帖数t=0,若水王id与下一个id不同,则消除不同的,并且记发帖数t--;若水王id与下一个id相同,则记发帖数t++;最后剩下的id 为水王。
代码实现:
package homework; import java.util.Scanner; public class KingOfWater { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); System.out.println("请输入帖子的数目:"); int length = sc.nextInt(); String list[] = new String[length]; System.out.println("请输入ID:"); for(int i=0;i<length;i++) { list[i] = sc.next(); } String king=list[0]; int t=0; for(int i=0;i<length;i++) { if(king.equals(list[i])) { t++; } else { t--; } if(t==0) { king = list[i]; t=1; } } System.out.println("水王是:"); System.out.println(king); } }
实现截图:
个人总结:
这次通过别人的提示然后通过两两消除的方法就可以简单地算出结果。