zoukankan      html  css  js  c++  java
  • 找水王续

    设计思想:

         定义数组储存ID。将每个水王ID都与其它水军ID进行抵消。首先先将前三个不同水军ID设为水王ID,开始抵消计数,“水王”中抵消后数量剩余为0的即被淘汰,用一个最新的水军ID继续进行抵消,最后剩下的即为水王ID。

    源代码:

    import java.util.Scanner;
    
    public class main {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		int length;//帖子数量
    		int idnum[]={0,0,0};//计数
    	    int ID[]={0,0,0};//储存水王地址      
    	    System.out.println("请输入总帖子数量:");
    	    Scanner in=new Scanner(System.in); 
    	    length=in.nextInt();
    	    int curId[]=new int[length];//储存所有的id地址
    	    System.out.println("请输入水军的ID列表");
    
    	    for(int j=0;j<length;j++)
    	    {
    	        curId[j]=in.nextInt();
    	    }
    	    /*求解过程*/
    	    for(int i=0;i<length;i++)
    	    {
    	        if(idnum[0]==0&&curId[i]!=ID[1]&&curId[i]!=ID[2])
    	        {
    	            idnum[0]=1;
    	            ID[0]=curId[i];
    	        }
    	        else if(idnum[1]==0 && curId[i]!=ID[0] && curId[i]!=ID[2])
    	        {
    	            idnum[1]=1;
    	            ID[1]=curId[i];
    	        }
    	        else if(idnum[2]==0 && curId[i]!=ID[0] && curId[i]!=ID[1])
    	        {
    	            idnum[2]=1;
    	            ID[2]=curId[i];
    	        }
    	        else if(curId[i]!=ID[0] && curId[i]!=ID[1] && curId[i]!=ID[2])
    	        {
    	            idnum[0]--;
    	            idnum[1]--;
    	            idnum[2]--;
    	        }
    	        else if(curId[i]==ID[0])
    	        {
    	            idnum[0]++;
    	        }
    	        else if(curId[i]==ID[1])
    	        {
    	            idnum[1]++;
    	        }
    	        else if(curId[i]==ID[2])
    	        {
    	            idnum[2]++;
    	        }       
    	    }
    	    System.out.println("三个水王ID为:"+ID[0]+" "+ID[1]+" "+ID[2]);
    	}
    
    }
    

    结果截图:

    个人总结:

      这个是找水王与上一次条件有所不同,但解决思路基本相同。同样是利用删除相同ID 进行解决问题。要解决实验问题,必须要进行笔上的演算,找到合适的算法。

  • 相关阅读:
    C#一些定义
    顺序
    针对IE8的css hack
    js 数字,金额 用逗号 隔开。数字格式化
    Ubuntu下使用Vi是方向键变乱码 退格键不能使用的解决方法
    UBUNTU中如何获得root权限
    区分IE8 、IE9 的专属css hack
    ubuntu 安装 Sublime Text 2
    PHP执行zip与rar解压缩方法
    使用ThinkPHP时,双引号导致插入数据库经过转义的处理
  • 原文地址:https://www.cnblogs.com/java-test/p/5528286.html
Copyright © 2011-2022 走看看