注册 登录
编程论坛 JAVA论坛

一道关于鸡和兔的算法题

yang158 发布于 2020-04-18 11:54, 3135 次点击
有一群鸡和一群兔,它们的只数相同,它们的脚数都是三位数,且这两个三位数的数字分别是0,1,2,3,4,5。设计一个算法用蛮力法求鸡和兔各有多少只,?它们的脚数各是多少
3 回复
#2
s15188380352020-04-25 18:57
不擅长算法
#3
wuruibiao2020-07-01 09:22
public static int jishu(){
        int [] array = {0,1,2,3,4,5};
        int jijiao=0,tujiao;
        for(int i=0 ;i<array.length;i++){
            if(array[i] == 0) continue;
            for(int j=0 ;j<array.length;j++){
                if(i == j) continue;
                for(int k=0 ;k<array.length;k++){
                    if(i == k || j==k) continue;
                     jijiao = i*100+j*10+k;
                     tujiao = jijiao *2;
                     if(jijiao%2 == 0 && jijiao/2 == tujiao/4 ){
                         System.out.println("鸡兔各"+jijiao/2+"只,鸡脚"+jijiao+"兔脚"+tujiao);
                         return jijiao;
                     }
                }
            }
        }
        return jijiao;
    }

    public static void main(String[] args) {
        jishu();
    }

希望有帮助
#4
双子座私语2020-07-01 10:44
回复 3楼 wuruibiao
你这算法最后的判断那里有点问题,直接返回的话只会出现一个结果,但是后面的结果还有很多,这整理一下无非就是求一个大于等于200,小于555的能被4整除的数,再加上一个条件,百位、十位、个位数都不大于5嘛
1