zoukankan      html  css  js  c++  java
  • 百鸡百钱

      /*
                百鸡百钱
                    有一百钱,要买鸡一百只
                    公鸡5钱一只 母鸡3钱一只 仔鸡三只1钱
                    一百钱必须都花了,必须买够一百鸡
                    三种鸡,每种都必须有
                    问 公鸡 母鸡 仔鸡 各多少只

                实现思路:穷举法
                    生成所有的公鸡母鸡仔鸡数值的可能性,计算符合题目要求的情况,并且输出结果
            */

            // 方法1,三种鸡的范围都是 1-100
            for (var g = 1; g <= 100; g++) {
                for (var m = 1; m <= 100; m++) {
                    for (var z = 1; z <= 100; z++) {
                        // 判断条件,所有的鸡加在一起是100,所有鸡的钱加在一起,也是100
                        // 这里两个条件必须同时满足,是逻辑与 && 关系
                        if (g + m + z == 100 && g * 5 + m * 3 + z / 3 == 100) {
                            console.log(`有公鸡${g}只,有母鸡${m}只,有仔鸡${z}只`);
                        }
                    }
                }
            }

            // 方法2 
            // 公鸡 5钱一只 最多是 20只 因为 20只公鸡 就已经 100 钱了
            // 母鸡 3钱一只 最多是 33只 
            // 循环次数减少,就提高了循环效率
            for (var g = 1; g <= 20; g++) {
                for (var m = 1; m <= 33; m++) {
                    for (var z = 1; z <= 100; z++) {
                        // 判断条件,所有的鸡加在一起是100,所有鸡的钱加在一起,也是100
                        // 这里两个条件必须同时满足,是逻辑与 && 关系
                        if (g + m + z == 100 && g * 5 + m * 3 + z / 3 == 100) {
                            console.log(`有公鸡${g}只,有母鸡${m}只,有仔鸡${z}只`);
                        }
                    }
                }
            }


            // 方法3 
            // 实际上要满足一共100鸡,假如公鸡10只,母鸡30只,仔鸡就必须是60只,才能满足一共100鸡的条件
            // 也意味着 如果 公鸡 母鸡 个数确定 仔鸡的数量一定必须是 100 - 公鸡 - 母鸡
            // 实际上 仔鸡 的循环是不需要的
            // 减少循环的层数,也能提高执行效率
            for (var g = 1; g <= 20; g++) {
                for (var m = 1; m <= 33; m++) {
                    // 仔鸡数量就等于 总数 100 只 减去 公鸡数量和母鸡数量
                    var z = 100 - g - m;
                    // 只需要判断,钱数是否是100钱
                    if (g * 5 + m * 3 + z / 3 == 100) {
                        console.log(`有公鸡${g}只,有母鸡${m}只,有仔鸡${z}只`);
                    }
                }
            }
    右侧打赏一下 代码改变世界一块二块也是爱
  • 相关阅读:
    Windows Server 2012配置开机启动项
    Windows Server 2019 SSH Server
    NOIP2017 senior A 模拟赛 7.7 T1 棋盘
    Noip 2015 senior 复赛 Day2 子串
    Noip 2015 senior复赛 题解
    Noip 2014 senior Day2 解方程(equation)
    Noip 2014 senior Day2 寻找道路(road)
    Noip 2014 senior Day2 无线网络发射器选址(wireless)
    Noip2014senior复赛 飞扬的小鸟
    Noip 2014 senior 复赛 联合权值(link)
  • 原文地址:https://www.cnblogs.com/ht955/p/14021633.html
Copyright © 2011-2022 走看看