找水王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]); } }
结果截图:
实验总结:
由简到难,一点点分解问题到自己能解决的程度,在一点点完成。