bash game nim game 和 wythoff game,較為領人驚嘆的是,他們最後都是通過數論或者自然數性質完美解決:
bash game:同餘理論
nim game:異或理論
wythoff game:**分割
一堆n個物品,兩人輪流取,每次取1至m個,最後取完者勝,比如10個物品,每次只能取1到5個,則先手方必贏
1.面對[1...m]個局面,必勝
2.面對m+1個局面,必輸
3.如果可以使對手面臨必輸局面,那麼是必贏局面
4.如果不能使對手面臨必輸局面,那麼是必輸局面
基礎:1 , 2, ..., m是必贏局面, m+1是必輸局面
遞推:m+2,m+3, ... ,2m+1是必贏局面,2m+2是必輸局面
...k(m+1)是必輸局面,應該允許k=0,因為0顯然也是必輸局面
在必輸局和必贏局中,贏的一方的策略是: 拿掉部分物品,使對方面臨k(m+1)的局面
例如上例中10個物品,只能拿1到5個,先手方拿4個即可,對手無論拿多少個,你下次總能拿完
從另乙個角度思考這個問題,如果物品數量隨機,那麼先手一方勝利的概率是m/(m+1),後手方勝利的概率是1/(m+1)
m堆n個物品,兩人輪流取,每次取某堆中不少於1個,最後取完者勝
詳細分析見:poj-2234:matches game
所有物品數目二進位制異或 為0,則先手必輸
所有物品數目二進位制異或不為0,則後手必輸
從另乙個角度思考這個問題,如果物品數量隨機,那麼每個數目的每一位上1或0概率相同,
如果有奇數個堆,那麼1的個數為偶數或者奇數的概率相同,
如果有偶數個堆,那麼1的個數為偶數的概率略大1/(m+1),
也就是說異或結果的每一位為0或1的概率幾乎差不多,而先手必輸要求異或結果每一位都為0,其實輸的概率很小
兩堆(ak,bk)(ak<=bk)個物品,兩人輪流取,每次從一堆中取k個或者從2堆中同時取k個,最後面對(0,0)局面的輸(設ak<=bk是為了忽略順序的影響)
1.面對(0,0)局面必輸
2.面對(1,1)(2,2)...(n,n)局面必贏
(0,1)(0,2)...(0,n)局面必贏
3.如果可以使對手面臨必輸局面,那麼是必贏局面
4.如果不能使對手面臨必輸局面,那麼是必輸局面
基礎:(0,0)是必輸局面;(0,1)(0 ,2)...(0,n)是必贏局面,
遞推:(1,2)是必輸局面;(1,1)是必贏局面
(1,3)(1 ,4)...(1,n)是必贏局面
(2,2),(2,3)...(2,n)是必贏局面
(3,5)是必輸局面;(3,3)(3,4)是必贏局面
(3,6)(3,7)...(3,n)是必贏局面
(5,5)(5,6)...(5,n)是必贏局面
(4,7)是必輸局面;(4,4)(4,5)(4,6)是必贏局面
(4,8)(4,8)(4,9)...(4,n)是必贏局面
(7,7)(7,8)(7,9)...(7,n)是必贏局面
(6,10)是必輸局面;(6,6)(6,7)(6,8)(6,9)是必贏局面
(6,11)(6,12)(6,13)...(6,n)是必贏局面
(10,10)(10,11)(10,12)...(10,n)是必贏局面
首先發現規律:(必輸局面的規律比較容易找到)
ak是前面必輸局未出現的數中最小者,
bk=ak+k( k=0,1,2,3,...n)
下面介紹必輸局(奇異局)的最重要性質:
1,2,...,n中每乙個自然數,出現且只出現在乙個奇異局中。
推導:1.由於ak總是選擇未出現的數,所以每個數總能出現在奇異局中
且ak不會選擇到重複的數
2.bk=ak+k,所以bk總是比前面所有奇異局出現的數都大,
所以bk不會選擇到重複的數
必贏一方的策略是:始終讓對手面對必輸局(奇異局)
給定任意局勢(a,b),判定(a,b)是否為必輸局的方法是:
k=0,1...n 記**比例是φ=1.618033
ak=[k*φ],bk=ak+k=[k*φ*φ]
如k=0,ak=0,bk=0
k=1,ak=1,bk=2
k=2,ak=3,bk=5 k=3,ak=4,bk=7
更好的一種判斷策略是 k = bk-ak ,如ak=k*φ時,當前局勢為奇異局
從勝負概率角度,如果堆中數量隨機,先手一方優勢很大
(相應經典題目是poj-1067)
三個十分相似的遊戲,但局勢的判斷和必勝策略差異卻很大,但卻又都來自數的性質,這不得不說是一件讓人驚奇的事情。
組合遊戲(博弈)
昨天看大白書翻到了組合遊戲這章,看著發覺原來是博弈論的內容,於是便看下去了。真是不看不知道,一看才知道自己的水平有多弱,不過好在還是集中精神地看了大部分。從nim遊戲 n堆石子,每人每次可以從任意一堆中取至少1個 至多整堆的石子,不能取者為輸 開始講起,引入必勝態 必敗態的概念 1.乙個狀態是必敗狀...
博弈 塗色遊戲
在乙個2 n的格仔上,alice和bob又開始了新遊戲之旅。這些格仔中的一些已經被塗過色,alice和bob輪流在這些格仔裡進行塗色操作,使用兩種塗色工具,第一種可以塗色任意乙個格仔,第二種可以塗色任意乙個2 2的格仔。每一輪遊戲裡,他們可以選擇一種工具來塗色尚未被染色的格仔。需要注意,塗色2 2的...
博弈 Nim遊戲
nim遊戲是博弈論中最經典的模型,它又有著十分簡單的規則和無比優美的結論。nim遊戲是組合遊戲 combinatorial games 的一種,準確來說,屬於 impartial combinatorial games 以下簡稱icg 滿足以下條件的遊戲是icg 可能不太嚴謹 1 有兩名選手 2 兩...