我談階梯博弈( Staircase Nim )

來源:互聯網
上載者:User


今天在POJ做了一道博弈題..進而瞭解到了階梯博弈...下面闡述一下我對於階梯博弈的理解..

 首先是對階梯博弈的闡述...博弈在一列階梯上進行...每個階梯上放著自然數個點..兩個人進行階梯博弈...每一步則是將一個集體上的若干個點( >=1 )移到前面去..最後沒有點可以移動的人輸..



如這就是一個階梯博弈的初始狀態 2 1 3 2 4 ... 只能把後面的點往前面放...如何來分析這個問題呢...其實階梯博弈經過轉換可以變為Nim..把所有奇數階梯看成N堆石子..做nim..把石子從奇數堆移動到偶數堆可以理解為拿走石子..就相當於幾個奇數堆的石子在做Nim..(
如所給範例..2^3^4=5 不為零所以先手必敗)為什麼可以這樣來轉化?   假設我們是先手...所給的階梯石子狀態的奇數堆做Nim先手能必勝...我就按照能贏的步驟將奇數堆的石子移動到偶數堆...如果對手也是移動奇數堆..我們繼續移動奇數堆..如果對手將偶數堆的石子移動到了奇數堆..那麼我們緊接著將對手所移動的這麼多石子從那個偶數堆移動到下面的奇數堆...兩次操作後...相當於偶數堆的石子向下移動了幾個..而奇數堆依然是原來的樣子...即為必勝的狀態...就算後手一直在移動偶數堆的石子到奇數堆..我們就一直跟著他將石子繼續往下移..保持奇數堆不變...如此做下去..我可以跟著後手把偶數堆的石子移動到0..然後你就不能移動這些石子了...所以整個過程..將偶數堆移動到奇數堆不會影響奇數堆做Nim博弈的過程..整個過程可以抽象為奇數堆的Nim博弈...   其他的情況...先手必輸的...類似推理...只要判斷奇數堆做Nim博弈的情況即可...   為什麼是只對奇數堆做Nim就可以...而不是偶數堆呢?...因為如果是對偶數堆做Nim...對手移動奇數堆的石子到偶數堆..我們跟著移動這些石子到下一個奇數堆...那麼最後是對手把這些石子移動到了0..我們不能繼續跟著移動...就只能去破壞原有的Nim而導致勝負關係的不確定...所以只要對奇數堆做Nim判斷即可知道勝負情況...

原文:http://blog.csdn.net/kk303/article/details/6692506

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.