python老鼠打洞问题
老鼠打洞问题
描述:
有一堵十尺厚的墙,两只老鼠从两边向中间打洞。大老鼠第一天打一尺,小老鼠也是一尺。大老鼠每天的打洞进度是前一天的一倍,小老鼠每天的进度是前一天的一半。问它们几天可以相逢,相逢时各打了多少。
(注:本题禁止使用幂运算)
输入格式:
输入1个整数,代表墙的厚度,单位为尺
输出格式:
第一行输出1个整数,表示相遇时所需的天数
第二行输出2个浮点数,分别为小鼠和大鼠打洞的距离,单位为尺,保留小数点后1位数字。
分析
分析题目中的未知项:
墙的厚度 n
大老鼠进度 已知第一天一尺
小老鼠进度 第一天一尺
大老鼠每天的打洞进度 已知是前一天的一倍
小老鼠每天的打洞进度 已知是前一天的一半
相逢需要时间
相逢时大老鼠打了多少 每天的打洞进度时间
相逢时小老鼠打了多少 每天的打洞进度时间
实现
跟据题目描述,打洞的速度分为第一天和后几天,第一天统一一天一尺,那么在实现时也要区分只用一天就相遇,和需要好几天相遇。
n = int(input())
rat, mouse, day, time = 1, 1, 0, 1 #大老鼠进度,小老鼠进度,相遇时间,第一天时间
distance_of_rat, distance_of_mouse = 0, 0 # 大老鼠和小老鼠的打洞距离
while n > 0:if n - mouse - rat < 0: #第一天打洞完成time = n / (mouse + rat) #算出需要时间n = n - mouse - rat #剩余墙厚distance_of_mouse = distance_of_mouse + time * mousedistance_of_rat = distance_of_rat + time * ratrat = rat * 2 #大老鼠每天进度mouse = mouse / 2 #小老鼠每天进度day = day + 1 #时间过去一天
print(day)
print(round(distance_of_mouse, 1), round(distance_of_rat, 1))
python老鼠打洞问题相关推荐
- python——老鼠打洞问题
描述: <九章算术>的"盈不足篇"里有一个很有意思的老鼠打洞问题.原文这么说的:今有垣厚十尺,两鼠对穿.大鼠日一尺,小鼠亦一尺.大鼠日自倍,小鼠日自半.问:何日相逢?各 ...
- python老鼠打洞问题_脑筋急转弯:老鼠为什么要打洞?这答案让人哭笑不得
脑筋急转弯起源于古印度.这意味着,当思维遇到特殊的障碍,你应该迅速离开思维的习惯,想从其他方面的问题.现在,它指的是一些小测验,不能用平常的想法回答.脑筋急转弯是更广泛的分类:有困惑,有趣的课,数学课 ...
- python老鼠打洞问题_内网渗透-老鼠打洞之SSH隧道
1. SSH隧道优势 (1)在内网中几乎所有得Linux/Unix服务器或个人机器都支持SSH协议,在使用的过程中可直接使用内网主机自带的SSH服务,不必再重新上传其他软件或者依赖,减少了被管理员发现 ...
- 老鼠打洞-Python123编程题库答案-Python从入门到精通挑战台
老鼠打洞 类型:流程控制 ...
- 盈不足术与老鼠打洞问题的近似解
老鼠打洞:说有一面 10 米厚的墙,面对面打洞,其中一只老鼠打洞的效率 1,2,4,8 -,对面老鼠的效率为 1,1/2,1/4,1/8,请问何时墙被打穿. 粗略计算之下,三天时(x1=3x_1=3) ...
- python老鼠书名字_芜湖学习python公司推荐
芜湖学习python公司推荐 苏州翔锐信息科技有限公司,成立于2011年,是一家人工智能教育公司,目前团队规模200+人,覆盖用户已超600万.我们致力于借助科技的技术力量,以认知科学作基础,研究人的 ...
- python中国古代数学问题——二鼠打洞
任务描述 <九章算术>的"盈不足篇"里有一个很有意思的老鼠打洞问题.原文是这么说的:今有垣厚十尺,两鼠对穿.大鼠日一尺,小鼠亦一尺.大鼠日自倍,小鼠日自半.问:何日相逢 ...
- Python中的if __name__ == ‘__main__‘
if name == 'main'的意思是:当.py文件被直接运行时,if name == 'main'之下的代码块将被运行:当.py文件以模块形式被导入时,if name == 'main'之下的代 ...
- 中国古代数学问题——二鼠打洞
<九章算术>的"盈不足篇"里有一个很有意思的老鼠打洞问题.原文是这么说的:今有垣厚十尺,两鼠对穿.大鼠日一尺,小鼠亦一尺.大鼠日自倍,小鼠日自半.问:何日相逢?各穿几何 ...
最新文章
- Java基础篇:反射
- aria2下载工具命令行和图形化界面使用
- bat no moudle named xxx
- 九九乘法表用python怎么写_用python做个九九乘法表
- 从公司发展看技术人才需求
- vue动画效果配置和弹层css sticky footer
- jsp通过易宝方式实现在线支付
- NYOJ47过河问题
- java方法、方法重载
- CVPR 2019 | 微软亚洲研究院 7 篇精选论文解读
- 管理和维护RHCS集群
- 杀毒软件“驱逐舰”序列号、组件和病毒库升级下载地址
- java程序设计基础(第3版)实验指导_清华大学出版社-图书详情-《Java程序设计基础(第5版)实验指导与习题解答》...
- 贪心算法的python实现
- oracle中包含用什么函数,oracle中包含用什么函数 oracle数据包含有什么函数?
- golang:cannot unmarshal number into Go value of type []json.RawMessage
- iOS--利用Fastlane实现自动化打包
- 扫描二维码后可以自动跳转到网页
- canvas画笔功能 Signature Pad
- 基于sql2014+VS2015的报刊管理系统报告
热门文章
- COdevs 2823 锁妖塔
- 2021年有哪些新机会?我们在杭州现场告诉你! | 玲听2021跨年演讲
- Python 百度图片爬取
- TS_React:类型化EventHandler
- linux 国外网络,Linux下,使用speedtest测试网络的上/下行速率
- python图标中文_使用pythonptx的图表的图表标题
- Mplayer源代码编译
- c++初学(电梯实验)
- Info.plist contained no UIScene configuration dictionary (looking for configura
- office和操作系统正版序列号