1.11 nim
http://icyxiangzi.blog.163.com/blog/static/1697789052010102710296503/
問題分析:
沒人每次可以拿一塊,或相鄰的兩塊。拿光者勝。
必勝策略:若有奇數個,則取中間一個。以后跟著對手取,保持兩邊的對稱性。若有偶數個,則取中間兩個。
擴展問題一:
最后拿光者敗。
分析:
設共有x個。
x=1,敗。??? x=2,勝。????? x=3,勝。(取2個)
x=4,敗。??? x=5,勝。????? x=6,勝。
x=7,敗。??? x=8,勝。
x=4,敗,不管石子如何排列。
x=5,取一個,則對手面臨x=4的局面,則對手必敗,我方必勝。
x=5,取二個,則對手面臨x=4的局面,則對手必敗,我方必勝。
x=7:我取1個,對手取1個,此時我面臨x=5的局面,我方必勝;我取1個,對手取2個,此時我面臨x=4的局面,我方必敗;我取2個,對手取1個,此時我面臨x=4的局面,我方必敗;我取2個,對手取2個,此時我面臨x=3的局面,我方必勝。此時,無論我方是取1個還是2個,我方均失敗。
x=8:我取1個,對手取1個,此時我面臨x=6的局面,我方必勝;我取1個,對手取2個,此時我面臨x=5的局面,我方必勝;我取2個,對手取1個,此時我面臨x=5的局面,我方必勝;我取2個,對手取2個,此時我面臨x=4的局面,我方必敗。必勝策略:我取一個,無論對手取1個還是2個,我方都必勝。
x=9:我取1個,對手取1個,此時我面臨x=7的局面,我方必敗;我取1個,對手取2個,此時我面臨x=6的局面,我方必勝;我取2個,對手取1個,此時我面臨x=6的局面,我方必勝;我取2個,對手取2個,此時我面臨x=6的局面,我方必勝。必勝策略:我取2個,無論對手取1個還是2個,我方都必勝。
總結得:當x%3=0時,我方取2個,則必勝;當x%3=1時,我方必敗;當x%3=2時,我取1個,則必勝。
擴展問題二:
有一堆石子,每次可以取1到k個,最后取光者勝。
分析:
設有x個。
當1≤x≤k時,則我方必勝。
當x=k+1時,設我取y(1≤y≤k)個,還剩下x-y個,1≤x-y≤k,對方可以一次取光,我必敗。
當k+2≤x≤2k+1時,我取x-k-1個(1≤x-k-1≤k),使得還余下k+1個,則我必勝。
當x=2k+2時,設我取y(1≤y≤k)個,還剩下x-y個,k+2≤x-y≤2k+1,對手必勝,我方必敗。
當2k+3≤x≤3k+2時,我取x-2k-2個(1≤x-2k-2≤k),使得還余下2k+2個,對手必敗,我方必勝。
總結,當x為k+1的整數倍時,我方必敗。x=ak+b,我取x-ak-a個,則還余下ak+a個,對方必敗。
總結
- 上一篇: 基类转派生类
- 下一篇: python+eclipse