当前位置: 首页 > news >正文

java题目9:100匹马驮100担货,大马一匹驮3担,中马一匹驮2担,小马两匹驮1担。计算大中小马的数目(HorsesPackGoods9)

每日小语

正是他的意图损坏了他的悟性。——《充足理由律的四重根》

思考

有点鸡兔同笼的感觉嗷,

//100匹马驮100担货,大马一匹驮3担,中马一匹驮2担,小马两匹驮1担。计算大中小马的数目(public class HorsesPackGoods9 
{public static void main(String[] args){int b = 0;//大马int m = 0;//中马int s = 0;//小马if(3*b+2*m+s*0.5 == 100){System.out.println("大马数目:"+b);System.out.println("中马数目:"+m);System.out.println("小马数目:"+s);}}}

我点运行运行不了?

原来是我还忽视了一个条件,就是大中小马加一起100

看了gpt后发现必须要写for循环,这是为什么?

在这个问题中,我们需要找到满足条件的大、中、小马的数量组合,使它们一共承载了100担货物。由于不知道具体的大、中、小马数量,因此我们需要遍历所有可能的组合,直到找到符合条件的解。

使用嵌套的for循环可以很好地遍历所有可能的大、中、小马数量组合。外层循环控制大马的数量,内层循环控制中马的数量,然后通过计算得到小马的数量。在每一次循环中,我们计算当前大、中、小马数量组合是否满足条件,如果满足条件则输出结果并结束程序。

因此,使用for循环可以帮助我们系统地遍历所有可能的解空间,找到符合条件的解。

遍历

当解决问题时,遍历是一种常用的方法,通过遍历可以尝试所有可能的情况,找到满足条件的解。在这个问题中,我们需要找到大、中、小马的数量,使得它们的总数为100,同时满足货物数量为100担的条件。

在代码中,我们使用了两层嵌套的循环来遍历可能的大、中马的数量。首先,外层循环遍历大马的数量`b`,范围从0到100,表示大马的数量可能从0匹到100匹。然后,在内层循环中,我们遍历中马的数量`m`,范围从0到剩余数量(100-b),这是因为中马的数量不能超过剩余的总数量。

在每一次循环中,我们计算小马的数量`s`,即总数量减去大、中马的数量。然后,我们根据题目中的条件进行判断:大马一匹承载3担货物,中马一匹承载2担货物,小马两匹承载1担货物。因此,我们计算出总货物数量是否为100担,即`3*b + 2*m + s*0.5 == 100`。

当找到满足条件的解时,我们输出大、中、小马的数量,并使用`return`语句结束程序,因为题目只要求输出一个解。

通过这种遍历的方式,我们可以尝试所有可能的情况,找到满足条件的解。遍历是一种强大的工具,可以帮助我们解决各种问题,尤其是在需要尝试多种情况的情况下。

终极代码

//100匹马驮100担货,大马一匹驮3担,中马一匹驮2担,小马两匹驮1担。计算大中小马的数目(public class HorsesPackGoods9 
{public static void main(String[] args){for (int b = 0; b <= 100; b++) { // b大马,s小马,m中马for (int m = 0; m <= 100 - b; m++) { int s = 100 - b - m; // 计算小马数量if(s+m+b==100&&3*b+2*m+s*0.5 == 100){System.out.println("大马数目:"+b);System.out.println("中马数目:"+m);System.out.println("小马数目:"+s);return;}}}}
}

撒花花~遍历还没有深入我的脑海~

http://www.lryc.cn/news/328305.html

相关文章:

  • 操作系统OS Chapter1
  • UE4_Mouse_Interaction——拖拽物体的实现
  • Tomcat配置https
  • Modelsim手动仿真实例
  • AXI-Stream——草稿版
  • 【编码器应用】第一节-编码器从从原理到应用详解
  • 瑞_23种设计模式_中介者模式
  • sqlite删除数据表
  • Spring Boot简介及案例
  • Learning To Count Everything
  • 大语言模型(LLM)token解读
  • 【Micro 2014】NoC Architectures for Silicon Interposer Systems
  • 《极客时间 - 左耳听风》01 | 程序员如何用技术变现?(上)【文章笔记 + 个人思考】
  • Typora结合PicGo + Github搭建个人图床
  • 【JavaWeb】Day27.Web入门——Tomcat介绍
  • 怎么更新sd-webui AUTOMATIC1111/stable-diffusion-webui ?
  • Apache Iceberg最新最全面试题及详细参考答案(持续更新)
  • 从TCP/IP协议到socket编程详解
  • uniapp开发小程序遇到的问题,持续更新中
  • C++经典面试题目(十一)
  • 设计模式(6):桥接模式
  • Java切面编程
  • 微服务demo(二)nacos服务注册与集中配置
  • 面试题库二
  • HarmonyOS实战开发-如何实现一个简单的电子相册应用开发
  • FFmpeg将绿幕视频处理成透明视频播放
  • 【2024系统架构设计】案例分析- 4 嵌入式
  • 基于javaweb(springboot+mybatis)生活美食分享平台管理系统设计和实现以及文档报告
  • 【MySQL探索之旅】MySQL数据表的增删查改——约束
  • 【Linux】体验一款开源的Linux服务器运维管理工具