搬砖问题:36 块砖,36 人搬,男搬4,女搬3,两个小孩抬1 砖, 要求一次全搬完,问男、女和小孩各若干?
分析:
男:5砖/1人 男最9多人--减少循环
女:3砖/1人 女最12多人--减少循环
小孩:1砖/2人 小孩要除尽 %2==0
循环嵌套:第一次得到男的数,第二次得到女的数,由于总共36减法得到小鸡的个数
最后在满足条件砖数36得到分别的数
java
package day05;
/*2、(for 循环)*搬砖问题:36 块砖,36 人搬,男搬4,女搬3,两个小孩抬1 砖,
要求一次全搬完,问男、女和小孩各若干?*/
public class Demo2 {
public static void main(String[] args) {
//公:4砖/个
//母:3砖/个
//小:1砖/2个
//36个人都要搬砖所以至少都是1人
for (int i = 1; i <=9 ; i++) {//男最多9人,减少循环
for (int j = 1; j <=12 ; j++) {//女最多12,减少循环
int k=36-i-j;
if ((k%2==0)&&(4*i+3*j+k/2==36)){ //小孩29时会有一个不用搬,如果都要劳动就 k%2==0
System.out.println("男:"+i+" 女:"+j+" 小孩子:"+k);
//验证:
System.out.println("砖:"+(4*i+3*j+k/2)+" 人:"+(i+j+k));
}
}
}
}
}