【趣题】穷举法解决百钱买百鸡

题目:

今有鸡翁一,值钱伍;鸡母一,值钱三;鸡鶵三,值钱一。凡百钱买鸡百只,问鸡翁、母、鶵各几何?

人话版:

公鸡一只5块,母鸡一只三块,雏鸡三只一块。用100块买100只鸡,公鸡、母鸡、雏鸡分别有多少只?

public class test{
    public static void main(String[] args) {
        int cock,hen,chick;
        for (cock=1; cock<=20; cock++){
            for (hen=1; hen<=33; hen++){
                for (chick=3; chick<=99; chick+=3){//chick最大值不能超过100,因为最多买100只鸡
                    if (cock*5 + hen*3 + chick/3 == 100){
                        if (cock + hen + chick == 100){
                            System.out.println("公鸡:" + cock);
                            System.out.println("母鸡:" + hen);
                            System.out.println("雏鸡:" + chick);
                            System.out.println("-----------------------");     
                            
                        }
                    }
                }
            }
        }
    }
}

java的代码如上所示

运行结果如下

下面进行分析

可以看到基本原理是把所有情况都试一次,在最里面的循环进行判断,符合的就输出

暴力穷举,emm...

end

                                               

                                                水汐音

                                              2018-05-21

posted @ 2018-05-21 17:00  水汐音  阅读(1527)  评论(0编辑  收藏  举报