益智問題(拈之變形) - 拼圖

Daniel avatar
By Daniel
at 2009-04-21T00:06

Table of Contents

原文恕刪

如果是演算法的話,我覺得應該可以用一個N^2的做法(不確定對不對)

如果是以最多拿兩倍來看(三被其實是一樣的做法)

先做一個二維的表,橫軸代表剩下的數量,縱軸代表上一個回合拿了幾個

因此每一格都是一個狀態,假設x代表處於該狀態的玩家輸了,那麼,

對於n=0時,都應標上x


10 x
09 x
08 x
07 x
06 x
05 x
04 x
03 x
02 x
01 x
00 01 02 03 04 05 06 07 08 09 10 n

那麼,對於某一格(n,m)的狀態呢?我們需要檢查他所有可能的下一步,

Ex : n = 10 , m = 1 時,可能的下一步為:(9,1) , (8,2) 只要有任一格為x

則本格的值就不是x,而是空白。

因此,填完之後,表格會變成:



10 x
09 x
08 x
07 x
06 x
05 x
04 x
03 x x
02 x       x x
01 x x  x x
00 01 02 03 04 05 06 07 08 09 10 n

如果用上述的方法,複雜度為N^3 但是,對於任一的 n 都有一個性質,

就是存在一個 m_0 使得 ( n , m ) , m <= m_0 都是x

那要如何找到 m_0 呢? 我們可以發現,若要由 n1 直接走到 n2 的方法就是

拿走 n1-n2 個火柴 那我們會走到 ( n2 , n1-n2 ) 的狀態,對於固定的n1,不論 m

為多少,所要檢查的 (n2,n1-n2) 都會落在一條直線上,也就是 X+Y= n1

我們將 (n2,n1-n2) 改寫成: ( n-m , m ) 那麼,我們從 m=1 開始,枚舉所有的m

( m <= n ) 必存在一個m'使的 ( n-m , m ) , m < m' 接不為x,也就是說,

只要該玩家可以移動的步數小於 m'他就不可能移動到x的格子上

=> m_0 = [m'/2] ......... []為下高斯

因此,對於起始狀態為n根火柴的遊戲,可以用 O(n^2)的時間做出這張表,接下來就只要

照著表上所話的,每一次都移動到畫有x的格子就可以了

(由此表也可以發現只要開始時,火柴的數量為fibonacci數,則必敗)


--
Tags: 拼圖

All Comments

益智問題(拈之變形)

Freda avatar
By Freda
at 2009-04-20T23:42
假設先手不能全拿,小於等於4個就不討論了~ (1)當有5個石頭時,先手勝 就先拿一個,不管對方怎麼拿,都可以全部拿光 (2)當有6個石頭時,後手勝 先手不能拿超過兩個,不然對手直接拿光就輸了 所以先手只能拿一個,變成剩下五個,還是輸 (3)當有7個石頭時,先手勝 先手先拿 ...

益智問題(拈之變形)

Olive avatar
By Olive
at 2009-04-20T21:02
簡單講一下,直覺這題應該是屬於NP,要解出來理論上要很久... 原文的解答,到15都是對的,不過20就錯了. 如果留20給對手,對手拿1,剩19還你,無法一手降到15,對方就可以走到15的安全局. 這題比較難是因為安全局不是一維的,要考慮前一手. 5-andgt;4是安全局,但是6-andgt;4就不是. 前 ...

類似水管接線(數連)

Victoria avatar
By Victoria
at 2009-04-20T09:01
※ 引述《cwhwillie (傳說123)》之銘言: : ※ 引述《terrorlone (憂鬱症有希望康復的星君)》之銘言: : : 至於我是怎麼解的……抱歉我也說不上來, : : 我只是瞪著它瞪了約 10 秒答案就出來了…… : : 以前我也玩過類似的紙筆遊戲, : : 但每次都是靠瞪的瞪出答案,沒有推 ...

益智問題

Necoo avatar
By Necoo
at 2009-04-19T23:04
※ [本文轉錄自 Math 看板] 作者: sean0405 (灰) 看板: Math 標題: 益智問題 時間: Sun Apr 19 11:28:02 2009 玩法:一堆石頭有100個,兩人輪流取石,每次每人至少取一個,最多取上次對方取走的 石頭數的三倍。取走最後一個石頭的人贏得勝利。 ...

關於英文字謎 困擾我好久...

Doris avatar
By Doris
at 2009-04-19T22:22
puzzle的板友大家好atat 我是今天第一次來這的新人 會來這的原因是因為我再玩一個英語的小遊戲 其中不少部分是要解英文字謎的 如果沒解開就不能進到下一步 這個幾個問題我困擾了一個下午還是無法解決 最後想到ptt上高手如雲 或許有人能幫我解開迷惘 在尋找了幾個相關連的板後 發現這個板似乎最 ...