寻找水王2
1》题目要求:
随着论坛的发展,管理员发现水王没有了,但是统计结果表明,
有三个发帖很多的ID。据统计他们的发帖数量超过了1/4,你能从发帖列表中快速找到他们吗?
2》设计思路:
因为这次是每个人的数量都超过了1/4,所以每次消去四个不同的数,最后剩下的就是三个水王。
3》源代码:
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]); } }
4》实验结果截图:
5》实验总结:
要学会对以前的知识举一反三,来解决不同的问题。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步