題目:
兩個玩家,一堆石頭,假設多餘100塊,兩人一次拿,最後拿光者贏。規則是:
1.第乙個人不能第一次就拿光所有石頭;
2.第一次拿了之後,每個人最多只能拿對方前一次拿的數目的兩倍,最少拿乙個。
求:先拿著必勝的策略,若果有的話,怎麼證明其正確性。
思路和解決辦法:
1:兩人輪流拿,先拿者每次拿乙個,那麼他就可以控制每一輪(兩人分別拿一次)被拿走的數目為2或3。這樣一直往後拿,只要剩餘石頭數目存在連續3個數目使得先拿者有必勝的策略,先拿者就可以贏.
剩餘數目:2 2 (先拿者可直接拿完) 先拿者必勝
必勝剩餘數目:3 1-2(若先拿者拿1個,後拿者拿2個) 後拿者贏
2-1(若先拿者拿2個,後拿者拿1個) 後拿者贏
剩餘數目:4 1-1-2 先拿者贏
必勝 1-2-1 先拿者贏
剩餘數目:5 1-1-(剩餘:3) 後拿者贏
2-4 後拿者贏
剩餘數目:6 1-1-(剩餘4) 先拿者贏
必勝 1-2-3 先拿者贏
剩餘數目:7 2-1-(4) 先拿者贏
2-2-3 先拿者贏
2-3-2 先拿者贏
必勝 2-4-1 先拿者贏
剩餘數目:8 1-2-(5) 後拿者贏
1-2-2-3或1-2-3-2或1-2-4-1 後拿者贏
2-1-(5) 後拿者贏
剩餘數目:9 1-1-(7) 先拿者贏
必勝 1-2-(6) 先拿者贏
剩餘數目:10 2-1-(7) 先拿者贏
2-2-(6) 先拿者贏
2-3-5 先拿者贏
必勝 2-4-4 先拿者贏
剩餘數目:11 1-1-(9) 先拿者贏
1-2-
好吧,這個笨辦法,寫到這的時候我才覺得不靠譜。但若剩餘石子數目超過100時有必勝策略,那麼必然存在小於100的3個連續數都有必勝策略。
待字閨中 1 海枯石爛
原題 兩個玩家,一堆石頭,假設多於100塊,兩人依次拿,最後拿光者贏,規則是 第乙個人不能一次拿光所有的 第一次拿了之後,每人每次最多只能拿對方前一次拿的數目的兩倍。求先拿者必勝策略,如果有的話。怎麼證明必勝。分析 這是斐波那契博弈,當且僅當石頭個數是斐波那契數的時候先手必敗。讓我們用第二數學歸納法...
「待字閨中」面試題之 最新版本
題目 給定軟體的版本號的表達方式,以及一些版本號,請找出最新的版本。例如 1.1.2,2,2 最新的是2.2 2.3.1,3.1.3 最新的是3.1.3 上面的版本號,都是用字串表示的。解答 基於兩兩比較的方法。寫乙個函式,bool comparevesion char string1,char s...
面試題 海量資料處理題
問題一 給你a,b兩個檔案,各存放50億條url,每條url占用64位元組,記憶體限制是4g,讓你找出a,b檔案共同的url。如果是三個乃至n個檔案呢?方案 先算一下4g有多少位 bit 4g 2 32 8 bit 320億 bit,n才50億,可以用位圖法。將其中乙個檔案中的url使用bloom ...