青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 1058|回复: 1

海盗分金问题

[复制链接]
发表于 2008-9-26 15:53 | 显示全部楼层 |阅读模式
——经典智力题推而广之一  
! A$ |$ L# Q, A  a2 }  (本帖改编自《科学美国人》杂志中IanStewart的《凶猛海盗的逻辑》) ; b4 }  A- j( c8 z9 z2 o/ O

% P% k7 R0 _" \  海盗,大家听说过吧。这是一帮亡命之徒,在海上抢人钱财,夺人性命,干的是刀头上舔血的营生。在我们的印象中,他们一般都瞎一只眼,用条黑布或者讲究点的用个黑皮眼罩把坏眼遮上。他们还有在地下埋宝的好习惯,而且总要画上一张藏宝图,以方便后人掘取。不过大家是否知道,他们是世界上最民主的团体。参加海盗的都是桀骜不驯的汉子,是不愿听人命令的,船上平时一切事都由投票解决。船长的唯一特权,是有自己的一套餐具——可是在他不用时,其他海盗是可以借来用的。船上的唯一惩罚,就是被丢到海里去喂鱼。 ( G( |: O; I; @2 X3 M
, _% O9 g1 e, d$ k  s+ n- F2 ?
  现在船上有若干个海盗,要分抢来的若干枚金币。自然,这样的问题他们是由投票来解决的。投票的规则如下:先由最凶猛的海盗来提出分配方案,然后大家一人一票表决,如果有50%或以上的海盗同意这个方案,那么就以此方案分配,如果少于50%的海盗同意,那么这个提出方案的海盗就将被丢到海里去喂鱼,然后由剩下的海盗中最凶猛的那个海盗提出方案,依此类推。 & J! j  z7 H  ?. X; C& Z

$ ~! ^. S* |) k7 J8 ~9 e  我们先要对海盗们作一些假设。 ) C1 Z2 _& y' ?% e2 y$ U
1 P3 p* l2 r' _- \5 }
  1) 每个海盗的凶猛性都不同,而且所有海盗都知道别人的凶猛性,也就是说,每个海盗都知道自己和别人在这个提出方案的序列中的位置。另外,每个海盗的数学和逻辑都很好,而且很理智。最后,海盗间私底下的交易是不存在的,因为海盗除了自己谁都不相信。
9 F; ~4 I, I/ J( `# d5 k  2) 一枚金币是不能被分割的,不可以你半枚我半枚。
7 X! G% n" [7 p( h/ D" A  3) 每个海盗当然不愿意自己被丢到海里去喂鱼,这是最重要的。 3 ]7 Y+ k( c2 U; w/ z: {% A7 v  s
  4) 每个海盗当然希望自己能得到尽可能多的金币。 . c4 v+ Q4 }1 l& [0 o+ n
  5) 每个海盗都是现实主义者,如果在一个方案中他得到了1枚金币,而下一个方案中,他有两种可能,一种得到许多金币,一种得不到金币,他会同意目前这个方案,而不会有侥幸心理。总而言之,他们相信二鸟在林,不如一鸟在手。
8 @; K6 d+ {, E% u' \  6) 最后,每个海盗都很喜欢其他海盗被丢到海里去喂鱼。在不损害自己利益的前提下,他会尽可能投票让自己的同伴喂鱼。 & e/ f+ C# [1 q/ K) ^% p0 X+ a
& r" j5 O( c" H9 s3 c. A; D8 L, {1 K
  现在,如果有10个海盗要分100枚金币,将会怎样? [eWebSoft_NextPage]6 v' K5 t9 p' H- Z

8 M2 k& @) W$ G- ^$ {0 O% L  要解决这类问题,我们总是从最后的情形向后推,这样我们就知道在最后这一步中什么是好的和坏的决定。然后运用这个知识,我们就可以得到最后第二步应该作怎样的决定,等等等等。要是直接就从开始入手解决问题,我们就很容易被这样的问题挡住去路:“要是我作这样的决定,下面一个海盗会怎么做?” 5 R9 _+ g7 t7 t
5 w' r2 n6 n' j3 v8 A; J
  以这个思路,先考虑只有2个海盗的情况(所有其他的海盗都已经被丢到海里去喂鱼了)。记他们为P1和P2,其中P2比较凶猛。P2的最佳方案当然是:他自己得100枚金币,P1得0枚。投票时他自己的一票就足够50%了。 8 ~: U3 w) Y7 d  w
" t6 T. K. B4 r' y- f2 o9 v
  往前推一步。现在加一个更凶猛的海盗P3。P1知道——P3知道他知道——如果P3的方案被否决了,游戏就会只由P1和P2来继续,而P1就一枚金币也得不到。所以P3知道,只要给P1一点点甜头,P1就会同意他的方案(当然,如果不给P1一点甜头,反正什么也得不到,P1宁可投票让P3去喂鱼)。所以P3的最佳方案是:P1得1枚,P2什么也得不到,P3得99枚。 ; ?/ X; Y. c$ w$ F" \" ?
, ?) v* T/ o* f' c/ l1 u$ Y$ H
  P4的情况差不多。他只要得两票就可以了,给P2一枚金币就可以让他投票赞同这个方案,因为在接下来P3的方案中P2什么也得不到。P5也是相同的推理方法只不过他要说服他的两个同伴,于是他给每一个在P4方案中什么也得不到的P1和P3一枚金币,自己留下98枚。 ) `" E$ d( ~: ]: x
; l  \7 `) W' P) v2 \
  依此类推,P10的最佳方案是:他自己得96枚,给每一个在P9方案中什么也得不到的P2,P4,P6和P8一枚金币。
- t' x# H: N5 f3 M, P2 ^& c8 ~; p  N  z+ b0 N) d
  下面是以上推理的一个表(Y表示同意,N表示反对):
- i6 ~( u7 y7 _$ [- j
2 M# g; |/ J6 c   P1  P2
9 N6 t" p% m- @   0  100
( ]3 ]$ k0 F2 N   N  Y - f3 q1 V( g: N' i5 s2 x: w
. z$ ~1 [, l( {- V% Y
   P1  P2 P3 % _5 \: v+ R& l( F
   1  0  99
" W# C( }6 L  `2 c1 N* a   Y  N  Y ! w* y+ B! h. @0 a1 d

' A) A4 D7 m- a. f7 v: \& O5 l   P1  P2  P3  P4 ' e+ D6 W, F" v6 \, K) K: p
   0  1   0  99
7 Z% O5 F. L0 K! a( s. c5 s   N  Y   N  Y
6 m: L& x( O; e; ~3 `# ^8 l; Q. \: Y8 W4 u" Z" g5 L
   P1 P2  P3  P4  P5
/ [4 D8 q+ Q6 S, _   1  0  1  0  98
% p0 T; S! i0 J! p   Y  N  Y  N  Y ) K: _: P, P3 B+ J
& p* ^4 {) n2 V( v7 d
   ……
& G, y; [) P! J: `/ O
" |( O, I: Q4 f$ p   P1  P2  P3  P4  P5  P6  P7  P8  P9  P10
/ W  D* K* y: A" c" w   0   1  0   1  0  1   0  1   0  96 , _  r! l  m: e6 X( w; ^# T2 P
   N   Y  N  Y  N  Y   N  Y  N   Y - h* y* s' M7 ~/ A7 W$ w/ Z5 }7 N
[eWebSoft_NextPage]
  `' P4 r4 N6 Y6 w  A' ~  }) J# e8 b, e) r. {( C
  现在我们将海盗分金问题推广:
" H5 i0 |6 [, F  K! e/ S+ r5 I2 q. m; a0 l/ B
  1) 改变一下规则,投票中方案必须得到超过50%的票数(只得到50%票数的方案的提出者也会被丢到海里去喂鱼),那么如何解决10个海盗分100枚金币的问题?
8 \+ X, y1 e6 A3 u  2) 不改变规则,如果让500个海盗分100枚金币,会发生什么? + @% v8 c$ m! y4 X
  3) 如果每个海盗都有1枚金币的储蓄,他可以把这枚金币用在分配方案中,如果他被丢到海里去喂鱼,那么他的储蓄将被并在要分配的金币堆中,这时候又怎样? 4 E$ t3 D* z9 R$ ~8 m' W  A
& \2 M& f0 u% @5 O% h
  通过对规则的细小改变,海盗分金问题可以有许多变化,但是最有趣的大概是1)和2)(规则仍为50%票数即可)的情况,本帖只对这两种情况进行讨论。 4 X- v+ \0 h' ~9 \  E7 S1 q" |& V
& B* B* G6 }' z
  首先考虑1)。现在只有P1和P2的情形变得对P2其糟无比:1票是不够的,可是就算他把100枚金币都给P1,P1也照样会把他丢到海里去。可是P2很关键,因为如果P3进行分配方案的话,即使他一枚金币也不给P2,P2也会同意,这样一来P3就有P2这张铁票!P3的最佳方案就是:独吞100枚金币。   ~6 g8 G) r6 u7 f- g4 Y. \7 j

+ Q1 `% l) w+ t/ n5 D& u' M+ O  P4要3张票,而P3是一定反对他的,而如果不给P2一点甜头,P2也会反对,因为P2可以在P3的方案中得救,目前为什么不把P4丢到海里呢?所以要分别给P1和P2一枚金币,这样P4就有包括他自己1票的3票。P4的方案为:P1,P2每人1枚金币,他自己98枚。
: A& }' i3 t0 c, N8 k- l; f6 a! ]1 l8 L/ }& o! a' y
  P5的情况要复杂点,他也要3票。P4是会反对他的,所以不用给,给P3一枚金币就能使他支持自己的方案,因为在接下来的P4方案中他什么也得不到。问题是P1和P2:只要其中有一个支持就可以了。可是只给1枚金币是不行的,P4方案中他们一定有1枚金币可得,所以只要在他们中随便选一个,给2枚金币,另一个就对不起了,不给。这样P5的方案是:自己97枚,P3得1枚,P1或P2得2枚。   j  Y7 _. U/ J7 n; C+ D

2 u1 s1 V; F" O. n  e% q  P6的方案建立在P5的上面,只要给每个P5方案中不得益的海盗1枚金币。要注意的是,P1和P2都应该看作在P5方案中不得益的:他们可能得2枚,可是也可能1枚不得,所以只要P6给他们1枚金币,根据“二鸟在林,不如一鸟在手“的原则,就可以让他们支持P6的方案。所以P6的方案是唯一的:P1,P2,P4每人1枚金币,P6自己拿97枚。
  ]8 \4 [( D0 h8 J2 q3 A
5 F2 }* Z$ j) }2 W+ j4 |  这样继续下去,P9的方案是:P3,P5,P7每人1枚金币,然后在P1,P2,P4,P6中任选一人给2枚金币,P9自己得95枚。最后,P10的方案是唯一的:P1,P2,P4,P6,P8每人1枚金币,P10自己得95枚。 / p  {- N* g+ \7 g; a  F4 t  r

( F" n, N' g4 U+ [3 I  2)是最有趣的(提醒:我们回到50%票即可的规则)。原题解中的推理过程直到200个海盗都是成立的:P200给每个偶数号的海盗1枚金币,包括他自己,其他海盗什么也得不到。从P201开始,继续推理就变得有点困难了:P201为了不被丢到海里去,必须什么也不留给自己,而给从P1到P199中所有奇数号海盗每人1枚金币,从而争取到100票,加上他自己1票,逃过一劫。P202也什么都得不到,他必须用这100枚金币买通100个从P201的方案中什么也得不到的海盗,要注意到现在这个方案不是唯一的:P201的方案中得不到金币的海盗是所有奇数号的海盗,有101个(包括P201),所以有101种方案。 4 V8 u  X4 ]& I2 A: z$ O% ]9 ~7 D
' P) c5 N7 q" R2 N- _
  P203必须得到102票,除了自己的1票外,他只有100枚金币,所以只能买到100票,所以可怜的家伙就被丢到海里喂鱼了。但是,P203是个很重要的角色,因为P204知道如果自己的方案不被通过,P203也一样会完蛋,所以他有P203的一张铁票。所以P204可以大出一口气:他自己一票,加上P203一票,然后加上用100枚金币买的确100票,他就得救了!100个有幸得到1枚金币的海盗,可以是P1到P202中任何100个:因为其中的偶数号的从P202的方案中什么也得不到,如果P204给他们中某个海盗1枚金币,这个海盗一定会赞同这个方案;而编号为奇数的海盗呢,只是有可能从P202的方案中得益罢了(可能性为100/101),所以根据“二鸟在林,不如一鸟在手“的原则,如果能得到1枚金币,他也会赞同这个方案。
7 q3 Y" r9 q& k# U, L; E( k* {0 Y5 r
  接下去P205是不能把希望放在P203和P204这两张票上的,因为就算他被丢到海里去,P203和P204还可以通过P204的方案机会活下来。P206虽然可以靠P205的铁票,加上自己1票和100枚金币搞到的100票,只有102票,所以他也被丢到海里喂鱼。P207好不了多少,他需要104票,而他自己以及P205和P206的铁票加上100枚金币搞到的100票只有103票——只好下海。
+ j* Q& U" r# v0 y$ s. I5 I* N  E( W# A( p! m" K
  P208运气比较好,他同样也要104票,可是P205,P206,P207都会投票赞成他的方案!加上他自己的1票和买来的100票,他终于逃脱了做鱼食的命运。 8 i- m* W6 _2 O3 Q2 v
- h  X; x- V+ E3 x' g6 o* g
  这样我们就有了一种可以一直推下去的新逻辑。海盗可以什么也不留给自己,买上100票,然后依靠一部分一定会被丢下海的海盗的铁票,从而让自己的方案通过。有这样运气的海盗分别是P201,P202,P204,P208,P216,P232,P264,P328和P456……我们看到这样的号码是200加上一个2的次幂。
# d9 |/ y5 W5 e6 b2 Z5 s' \
4 d9 j+ K/ [) V5 r% x0 W; U+ V  哪些海盗是受益者呢,显然铁票是不用(不能)给金币的。所以只有上一个幸运号码及他以前的那些海盗才有可能得到1枚金币。于是我们得到500海盗分100枚金币的结论是:前44个最凶猛的海盗被丢进海里,然后P456给P1到P328中的100个海盗每人1枚金币。 9 N% }3 V, K9 F! T
  I) g  }) M9 k% k6 c3 @% @
  就这样,最凶猛的海盗被丢进海里,而比较凶猛的什么也得不到,而只有最温柔的那些海盗,才有可能得到1枚金币。正如《马太福音》所说:“温柔的人有福了,因为他们必承受土地!”
发表于 2008-10-2 22:46 | 显示全部楼层

Tournaments与Sit and go

来源:www.ziyoutang.com
说到在线扑克,那就不得不说说Tournaments(锦标赛)和sit and go(坐下即玩锦标赛),几乎所有的在线扑克室都提供这2种比赛。
7 L& u( ?3 b' F- y, Z7 e0 A% FTournaments(锦标赛)一般是指规定的多少人,在规定的时间内(或不指定时间),以淘汰的方式对战扑克,最后胜利的前3名(有的时候是前6名,有的时候是前10名,根据赛事而定)将获得奖金。通常情况下,玩家要参加这锦标赛必须报名购买参赛资格(筹码购买,如$5;也有扑克点购买,如500个扑克点;也有条件购买,如之前有过存款多少,之前玩过多少手扑克等等),有的时候提供Freerolls(免费锦标赛),无需购买资格,报名即可参加。
; \7 Q6 V2 U2 `6 \* CTournaments(锦标赛)开始时会发给每个玩家1000个竞赛筹码(有的时候是1500,根据赛事而定),玩家通过比赛决胜负。Tournaments(锦标赛)会根据时间的推移将提高小盲注和大盲注,所以,即使玩家一直FOLD,随着时间的推移,手中的筹码将慢慢减少,直到被淘汰。
4 S0 z& g: f7 D- m5 J3 d- ]举个例子,A先生参加一个1000人的Tournaments(锦标赛),参加资格需交纳$5的参赛资格费,而作为奖励是,如果A先生能技压群雄赢得前三甲,那么将获得$2500(第一名)或$1500(第二名)或$1000(第三名)的现金奖励。所以对玩家来说,以较少的购买博取最大的收益,这种诱惑是极大的。
- N6 x0 Q4 h9 U0 x0 U2 b9 h' v, CTournaments(锦标赛)中的Freerolls(免费锦标赛)是玩家们特别喜欢的一种比赛,原因很简单啊,一本万利啊!无需参赛资格费用,只要注册就可以参加,不过Freerolls(免费锦标赛)参加的人实在太多,一般一个1000人的Freerolls(免费锦标赛),开始报名后5分钟就会爆满,所玩Freerolls(免费锦标赛),的玩家必须看准时间。
* I5 U1 M9 T  {: O! L) U( e+ U
- B# i2 f. p  U; G5 osit and go(坐下即玩锦标赛)的比赛方式与Tournaments(锦标赛)基本相同,但sit and go(坐下即玩锦标赛)没有具体的时间指定,当玩家凑满一桌了,锦标赛就可以开始了。sit and go(坐下即玩锦标赛)所化的时间往往比较短。) g8 C- Y) t8 n# c5 J

8 s/ C$ U, O2 L, P1 m2 Q: ~2 k
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2024-11-23 16:51 , Processed in 0.059000 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表