有個4x4的棋盤 放上16個石子
兩人輪流拿
一次可以拿走1顆
或是沿縱向 橫向 或是平行對角線的方向
拿走2或3顆
拿到最後一顆石子的人 判輸
.............................
這樣的遊戲 策略怎麼抓?
--
※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw)
◆ From: 61.226.32.16
> -------------------------------------------------------------------------- <
作者: ledia (totally defeated) 看板: puzzle
標題: Re: [問題] 不知道這個東西....
時間: Thu Jan 23 02:53:33 2003
※ 引述《tomichy ( nuit de la ptt)》之銘言:
: 有個4x4的棋盤 放上16個石子
: 兩人輪流拿
: 一次可以拿走1顆
: 或是沿縱向 橫向 或是平行對角線的方向
: 拿走2或3顆
: 拿到最後一顆石子的人 判輸
: .............................
: 這樣的遊戲 策略怎麼抓?
如果是寫電腦程式來跟人下的話
方法不會太難
大概就是把每個 "position" 編碼起來, 有 2^16 種, 也就是 65535 種
然後從必輸或是必贏的開始往石子多的 "position" 回推
例如, 這個 position 的子節點都是輸的, 那這個 position 就是勝
反之, 如果這個 position 有一個子節點是勝的, 那他自己就是輸
最後會把輸贏關係的 map 整張建好
那麼這張 map 就是所謂勝利的策略
至於要歸納成簡單的 rule 的話我想不是很簡單就是很難吧 ^^|
類似的方法可以用在各種形式的 nim 或是有特殊遞迴關係的遊戲上
--
難以抗拒
--
※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw)
◆ From: stego
※ 編輯: ledia 來自: stego (01/23 02:55)