现在共有100 匹马和100石头,马分三种,大马,中马,小马.其中,每匹大马每次可以驮三块石头,中马可以驮两块石头,而小马两匹才能驮一块,问需要多少匹大马,中马和小马?
// 用java来帮你计算
// 先写一个main方法
public static void main(String[] args) {
//大马每次三块石头
int a = 3;
//中马每次2块石头
int b = 2;
//小马两只块石头
double c = 0.5;
for(int i = 1;i<100;i++){
for(int j = 1;j<100;j++){
for(int k=1;k<100;k++){
if(a*i+j*b+c*k==100 && i+j+k==100){
System.out.println("大马:"+i+"中马:"+j+"小马:"+k);
}
}
}
}
}
结果如下:
优化版本(比第一版优了6倍):
// 先写一个main方法
//大马每次三块石头
int a = 3;
//中马每次2块石头
int b = 2;
//小马两只块石头
double c = 0.5;
for(int i = 1;i <= 100 ;i++ ){
for(int j = 1;j <= 100-i ;j++ ){
for(int k = 1;k <= 100-i-j ;k++ ){
if(i+j+k==100 && a*i+b*j+c*k==100){
System.out.println("大马:"+i+"中马:"+j+"小马:"+k);
}
}
}
}