穷举算法

穷举法是基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则

为本体的正解,否则本题无解。穷举法也称为枚举法。

//        找100以内的所有偶数。
//        for ( int a=0;a<100;a++)
//        {
//            if (a%2==0)
//            {
//                System.out.println(a);
//            }
//
//        }



//        有三种硬币若干:1分,2分,5分。要组合1毛5,有哪些组合方式?

        for ( int x=1;x<=15;x++)
        {
            for (int y=1;y<=7;y++)
            {
                for (int z=1;z<=3;z++)
                {
                    if ( x+y*2+z*5==15)
                    {
                        System.out.println("1分"+x+"个;"+"2分"+y+"个;"+"5分"+z+"个;");
                    }
                }
            }
        }

//        买东西
//        小张过元旦发了100元的购物券,他要买香皂(5元),牙刷(2元),洗发水(20元)。要想把100元正好花完,如何买这三样东西?

        for(int a=1;a<=20;a++)
        {
            for (int b=1;b<=50;b++){
                for (int c=1;c<=5;c++){
                    if ( a*5+b*2+c*20==100)
                    {
System.out.println("香皂"+a+"个;牙刷"+b+"个;洗发水"+c+"个");
                    }
                }
            }
        }

//        百鸡百钱
//        有100文钱,要买100只鸡回家。公鸡2文钱一只,母鸡1文钱一只,小鸡半文钱一只。如何买?

//        百马百石
//        有100石粮食,母匹大马驮2石,每匹中马驮1石,每两匹小马驹一起驮1石。要用100匹马驮完100石粮食,如何按排?

    }
}

猜你喜欢

转载自blog.csdn.net/u010371458/article/details/78665002