找水王续
Posted 神坑丶不是我
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了找水王续相关的知识,希望对你有一定的参考价值。
设计思路:
与一相同的思路,只是把Id变为3个,经过Id的个数次循环,每次循环时,与Id[0]相同则对应的重复度+1,与Id[1]相同则对应的重复度+1,与Id[3]相同则对应的重复度+1,当Id[0]的重复度为0时,将当前ID赋给Id[0],当Id[1]的重复度为0时,将当前ID赋给Id[1],当Id[2]的重复度为0时,将当前ID赋给Id[2],与4个Id都不同,则削去4个Id,得到最终3个大于1/4的Id。
package homework; public class find2 { public static void main(String args[]) { String ID[]={"1","2","3","2","8","2","3","8","8","3"}; Find(ID); } public static void Find(String ID[]) { int Times[]=new int[3];//计数器 String Id[]=new String[3];//3个水王Id Times[0]=Times[1]=Times[2]=0;//重复度 Id[0]=Id[1]=Id[2]=null; for(int i=0;i<ID.length;i++) { if(ID[i]==Id[0])//与Id[0]相同则对应的重复度+1 { Times[0]++; } else if(ID[i]==Id[1])//与Id[1]相同则对应的重复度+1 { Times[1]++; } else if(ID[i]==Id[2])//与Id[3]相同则对应的重复度+1 { Times[2]++; } else if(Times[0]==0)//当Id[0]的重复度为0时,将当前ID赋给Id[0] { Times[0]=1; Id[0]=ID[i]; } else if(Times[1]==0)//当Id[1]的重复度为0时,将当前ID赋给Id[1] { Times[1]=1; Id[1]=ID[i]; } else if(Times[2]==0)//当Id[2]的重复度为0时,将当前ID赋给Id[2] { Times[2]=1; Id[2]=ID[i]; } else//与4个Id都不同,则削去4个Id { Times[0]--; Times[1]--; Times[2]--; } } for(int i=0;i<3;i++)//输出水王Id { System.out.println("水王"+(i+1)+"的ID是:"+Id[i]); } } }
以上是关于找水王续的主要内容,如果未能解决你的问题,请参考以下文章