Java基础题:搬砖

搬砖问题: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));
                    }
                }
            }
​
​
​
    }
}
​
相关推荐
Dlrb12114 小时前
C语言-指针三
c语言·算法·指针·const·命令行参数
kkeeper~4 小时前
0基础C语言积跬步之深入理解指针(5下)
c语言·开发语言
Tisfy5 小时前
LeetCode 2540.最小公共值:双指针(O(m+n))
算法·leetcode·题解·双指针
一直不明飞行5 小时前
Java的equals(),hashCode()应该在什么时候重写
java·开发语言·jvm
IronMurphy5 小时前
【算法四十七】152. 乘积最大子数组
算法
REDcker5 小时前
有限状态机与状态模式详解 FSM建模Java状态模式与C++表驱动模板实践
java·c++·状态模式
盲敲代码的阿豪5 小时前
Python 入门基础教程(爬虫前置版)
开发语言·爬虫·python
你的保护色5 小时前
【无标题】
java·服务器·网络
basketball6165 小时前
C++ 构造函数完全指南:从入门到进阶
java·开发语言·c++
互联科技报5 小时前
2026超融合选型:Top5品牌与市场格局解读
开发语言·perl