首页 > 代码库 > 编程算法基础-暴力破解法

编程算法基础-暴力破解法

1.1   暴力破解法

鸡兔同笼

50头,120脚,鸡兔分别几仅仅?

/*鸡兔同笼
 * 鸡兔同笼,头50,脚120
 * 鸡兔几何?
*/
package ChickRabbit;
 
public class ChickRabbit {
    public static void main(String[] args){
       int chick;
       int rabbit;
       int HEAD=50;
       int FEET=120;
       for(chick=0;chick<=HEAD;chick++){
           rabbit=HEAD-chick;
           if(rabbit*4+chick*2==FEET){
              System.out.println("鸡:"+chick);
              System.out.println("兔:"+rabbit);
           }
       }
    }
}

 

韩信点兵

韩信知道部队人数大约1000人左右,详细数字不详。

5人一组,余1人;

7人一组,余2人;

8人一组。余3人。

问,有多少人?

/*韩信知道部队人数大约1000人左右,详细数字不详。
5人一组,余1人。
7人一组。余2人;
8人一组,余3人。
问,有多少人?*/
 
package ChickRabbit;
 
public class HanxinDianBing {
    public static void main(String[] args) {
       int n;
       for (n = 800; n < 2000; n++) {
           if (n % 5 == 1 && n % 7 == 2 && n % 8 == 3) {
              System.out.println("部队人数可能是:"+n);
           }
       }
    }
}
部队人数可能是:891
部队人数可能是:1171
部队人数可能是:1451
部队人数可能是:1731



马与瓦

总共同拥有 100 匹马

总共驮有 100 块瓦(古代的瓦,非常大,非常重)

每匹大马每次能驮 3 块瓦

每匹小马每次能驮 2 块瓦

小马驹每次 2个马驹驮 1块瓦

求各种马的数目

提示:可能是多解的。要列出全部的解。

/*总共同拥有 100 匹马
总共驮有 100 块瓦(古代的瓦。非常大,非常重)
每匹大马每次能驮 3 块瓦
每匹小马每次能驮 2 块瓦
小马驹每次 2个马驹驮 1块瓦
求各种马的数目
提示:可能是多解的,要列出全部的解。

*/ package ChickRabbit; public class HorseAndBrick { public static void main(String[] args) { int HORSE = 100; int BRICK = 100; int big; int mid; int little; for(big=0;big<=100;big++){ for(mid=0;mid<=100;mid++){ little=HORSE-big-mid; if(big*3+mid*2+little*0.5==BRICK){ System.out.println("各种马的数目可能是:大马:"+big+" 小马:"+mid+" 小马驹:"+little); } } } } }

各种马的数目可能是:大马:2 小马:30 小马驹:68
各种马的数目可能是:大马:5 小马:25 小马驹:70
各种马的数目可能是:大马:8 小马:20 小马驹:72
各种马的数目可能是:大马:11 小马:15 小马驹:74
各种马的数目可能是:大马:14 小马:10 小马驹:76
各种马的数目可能是:大马:17 小马:5 小马驹:78
各种马的数目可能是:大马:20 小马:0 小马驹:80



编程算法基础-暴力破解法