python计算棋盘放米的故事_在棋盘上64个格子里放大米粒的故事
有一个皇帝的女儿不幸落水,被一个农夫救上来,皇帝问农夫想要什么以报答他的救女之恩。农夫指着旁边的一个国际象棋棋盘,对皇帝说:您在第一个格子里放一粒大米,在第二个格子里放2粒,在第3个格子里放4粒,在第4个格子里放8粒,以此类推,每一格子里的大米粒数都是前一格的两倍。就这样把这64个格子都放好了,我就要这么多大米粒。皇帝听后,觉得农夫的要求很容易满足,就笑着满口答应下来。但是一个聪明的大臣告诉皇帝,把全德国生产的大米都拿来,也填不完这64格……。
这是一道中学数学题,就是“等比数列求和”的问题。
棋盘上64个格子里总共究竟要放多少粒大米?其实是很容易计算出来的:设64格里的大米粒数总和是S,则
S=1+2+4+8+……+263 (1)
(等号右边第64项是2的63次方)
我们把(1)式等号两边都乘以2,等式仍然成立:
2S=2+4+8+……+263+264 (2)
(等号右边第63和64项分别是2的63和64次方)
(2)式等号右边从第一项开始到第63项,与(1)式等号右边从第二项开始到第64项完全一样,所以,我们把(2)式等号两边分别减去(1)式等号两边,等式仍然成立,并且变成:
S=264-1 (3)
也就是说,棋盘上64格里的大米共有“2的64次方减去1”这么多粒, 即18,446,744,073,709,551,615粒。
有人用电子秤计量过,一公斤大米约有52000粒。
我们保守一点祘,假设一公斤大米有216 = 65536粒,“2的64次方减去1”这么多粒大米就有248公斤,2814亿吨。
漫说德国,就是把全世界的大米都拿来也不能按农夫要求填好这64个格子,所以,这只是一个玩笑而已。
python计算棋盘放米的故事_在棋盘上64个格子里放大米粒的故事相关推荐
- python棋盘放米问题_棋盘堆米的难题怎么解决?
原标题:棋盘堆米的难题怎么解决? 国外有个故事,一个人和国王打赌.如果国王输了就给他米.但是他要的你看上去很少,实则算起来确实非常多,甚至一个国家的米都不够.国王为了用人信守承诺.国王为了应向所有人显 ...
- python棋盘放米循环结构_Python递归法计算棋盘上所有路径总奖品最大值(京东2016编程题)...
问题描述:假设有一个6x6的棋盘,每个格子里有一个奖品(每个奖品的价值在100到1000之间),现在要求从左上角开始到右下角结束,每次只能往右或往下走一个格子,所经过的格子里的奖品归自己所有.问最多能 ...
- python123中棋盘放米的故事_棋盘里放麦粒的故事你只知道一半
01 - 印度国王的赏赐 古时候,印度有个国王很爱玩.一天,他对大臣们说:希望得到一种玩不腻的玩意儿,谁能使他得到,将重重有赏. 不久,有个聪明的大臣向他献上一种棋子,棋盘上有64个格子,棋子上刻着& ...
- Python:阿基米德棋盘放米问题
国王与数学家阿基米德下棋,在棋盘上放米,国王输了,国王问阿基米德要什么奖赏? 阿基米德对国王说: 我只要在棋盘上第一格放一粒米,第二格放二粒,第三格放四粒,第四格放十六粒--- 按这个倍增的比例放满整 ...
- python -- 计算 平方、乘方、平方根_从零开始学习PYTHON3讲义(二)把Python当做计算器...
<从零开始PYTHON3>第二讲 上一讲我们说过了如何启动Python IDLE集成开发学习环境,macOS/Linux都可以在命令行执行idle3.Windows则从开始菜单中去寻找ID ...
- python棋盘放米的故事阅读答案_棋盘摆米的故事你得到了什么启发
就是这个:棋盘上的米有这样一个关于某一个古代国王的故事.国王爱上了一种称为"围棋"的游戏,决定嘉奖此项游戏的发明者.他把发明者召入宫中并且当众宣布要满足发明者一个愿望." ...
- python123中棋盘放米的故事_小学数学故事:棋盘上的麦粒问题
第 1 页 小学数学故事:棋盘上的麦粒问题 查字典数学网为大家提供了数学故事棋盘上的麦粒问 题,希望同学们多多积累,不断进步 ! 在印度有一个古老的传说:舍罕王打算奖赏国际象棋的发明 人 -- 宰相西 ...
- python棋盘放麦粒求和递归_超级加倍!学会了就是一代土块(du guai)——你知道有多少种洗牌的方式吗?...
原标题:超级加倍!学会了就是一代土块(du guai)--你知道有多少种洗牌的方式吗? 数学中有一个非常可爱的函数--阶乘函数( factorial function),它会将输入数乘以所有小于它的正 ...
- python棋盘放米问题_Python基于回溯法子集树模板解决马踏棋盘问题示例
本文实例讲述了Python基于回溯法子集树模板解决马踏棋盘问题.分享给大家供大家参考,具体如下: 问题 将马放到国际象棋的8*8棋盘board上的某个方格中,马按走棋规则进行移动,走遍棋盘上的64个方 ...
- python123平台作业答案循环结构棋盘放米_python练习集100题(1-20)
题目1:有1.2.3.4四个数,能组成多少个互不相同且无重复的三位数?都是多少?list_num=[1,2,3,4] all_num=[] for i in list_num: for j in li ...
最新文章
- 【GZAdmin】开源BS demo快速搭建
- 2017.4.14-afternoon
- python正确的字符串常量_4.1 字符串常量(python)
- 前端学习(96):切图流程
- (二)GKE上MLOps的Jenkins作业和部署
- 爆赞!java生成文件
- 你确认退出吗 html,按退出会 执行2次弹出确认窗口,为何?
- php 加密视频播放地址,如何在PHP中实现Clear-Key视频加密并以HTML格式播放
- Altium Designer 21 实例贴片0603封装的创建
- oracle 12c的PDB数据库未打开
- 【ES系列五】——集群搭建(多机集群单机多节点集群)
- stm32c6t6硬件iic接口的使用--以0.96寸oled为例
- 计算机与测控技术专业就业方向,测控技术与仪器专业就业前景与方向(五篇)
- Java 十进制转二进制
- 如何临时删除桌面右键菜单上的登录画面修改
- PC端查看WiFi密码
- redis安装及部署模式
- 波斯王子-时之沙 怀念
- jar包配置开机自启
- 控制面板中的管理工具提示位置不可用