Board logo

标题: 如何拿到第100个乒乓球?(推理题) [打印本页]

作者: hanxuee    时间: 2009-2-25 19:04     标题: 如何拿到第100个乒乓球?(推理题)

假设排列着100个乒乓球,由两个人轮流拿球装入口袋,能拿到第100个乒乓球的人为胜利者。条件是:每次拿球者至少要拿1个,但最多不能超过5个,问:如果你是最先拿球的人,你该拿几个?以后怎么拿就能保证你能得到第100个乒乓球?

答案:
本帖隐藏的内容需要回复才可以浏览

作者: GuEN    时间: 2009-2-25 20:38


作者: hettyw    时间: 2009-2-25 21:10

先拿4个。
作者: ieye4u    时间: 2009-2-27 05:20

太难了,只能算咯大概。也许答案另有高招。
反推一下:如果我要赢,则我第一次和我最后一次拿得球数总和为2---10之间。所以中间必须拿完的球数为90----98个。

另一方面,由于对方最多拿5个球,那么我们每次拿得球数总和至少为6,所以如果没有风险则中间要拿走的球数在90---98之间选择的话只有96,因为90-98之间只有96可以被6整除。 所以没有风险的情况下中间轮数中必须拿走96个球,则我赢。

答案:
第一次我拿任意(《=5),从第二次开始,我只要让我拿的球数和对方的球数加起来等于6即可。最后我拿到的球的个数依次为5,4,3,2,1。但无论怎样,最后一个球都在我手里,我赢。
作者: ieye4u    时间: 2009-2-27 05:28

算错了一点,第一次是拿任意,但小于4,即1,2,3均可。
作者: tombell1129    时间: 2009-3-14 00:58

楼上的你用你的方法会死很惨的 正解只能是第一次拿4个 然后每次拿(6-对手取球数)即可
按楼上你的方法 假设你第一次拿了N个(N=1,2,3) 那第二个人 第一次拿(4-N)个 然后拿(6-你当次取球数)你无论如何拿不到最后一个!
作者: parasiteeve    时间: 2009-3-14 16:05

100<-94<-88<-82<-76<-70<-64<-58<-52<-46<-40<-34<-28<-22<-16<-10<-4
作者: 天天看到你    时间: 2010-3-3 07:19

精确的算法@
作者: calvin    时间: 2010-3-11 14:24


作者: applelisakency    时间: 2010-3-13 20:27






欢迎光临 人在德国 社区 (http://csuchen.de/bbs/) Powered by Discuz! 7.2