ACM 數論篇 博弈論

2021-08-04 00:13:41 字數 1869 閱讀 2813

此類問題一般有如下特點:

1、博弈模型為兩人輪流決策的非合作博弈。即兩人輪流進行決策,並且兩人都使用最優策略來獲取勝利。

2、博弈是有限的。即無論兩人怎樣決策,都會在有限步後決出勝負

3、公平博弈。即兩人進行決策所遵循的規則相同。

問題模型:只有一堆 n 個物品,兩個人輪流從這堆物品中取物,規定每次至少取乙個,最多取 m 個,最後取光者得勝。

解決思路:必勝攻略——只要保證能夠給對手留下 (m+1) * k 個物品,必然獲勝。大致分為兩種情況:

變形一:條件不變,改為最後取光的人輸

必勝策略:只要保證能夠給對手留下(m+1)*k + 1個物品即可。

結論:n = (m+1)* k + 1(k 為任意整數) 時後手勝。否則,先手勝。

題目練習:

hdu:2188 2149 1846 1847

poj:2368

問題模型:只有一堆 n 個物品,兩個人輪流從這堆物品中取物,規定每次至少取 a 個,最多取 b 個,如果最後剩餘物品的數量小於 a 個,則不能再取,最後取光或者導致對方無法取物品(取完之後剩餘物品數量小於 a 個)者得勝。

解決思路:必勝攻略——只要保證能夠給對手留下 (a+b) * k 個物品,必然獲勝。大致分為兩種情況:

擴充套件變形一:其他條件不變,改為最後取光或者導致對方無法取物品(取完之後剩餘物品數量小於 a 個)者輸。

必勝策略:只要保證能夠給對手留下(a+b) * k + a個物品,必然獲勝。

結論:只需將上乙個的結論,n 改為 n-a即可。

擴充套件變形二:其他條件不變,如果最後剩餘物品的數量小於 a 個,則要一次取完

必勝策略:只要保證能夠給對手留下(a+b) * k個物品,必然獲勝。

結論:

擴充套件變形三:其他條件不變,如果最後剩餘物品的數量小於 a 個,則要一次取完。並且最後取完的人輸

必勝策略:只要保證能夠給對手留下(a+b) * k + a個物品,必然獲勝。

結論:只需將上乙個的結論,n 改為 n-a即可。

題目練習:

codeforces gym 100694 m the fifth season

hdu:2897

數論之博弈論

1.當 n m 1 時 第乙個取的人不可能獲勝 2.當 n k m 1 r 時 k,r,s都是未知的整數 先取者拿走 r 個,那麼後者再拿 1 m 個 此時 n k 1 m 1 s 先取者再拿走s 個 最後總能造成 剩下n k m 1 的局面 3.若n k m 1 那麼先取者必輸 bool bash...

ACM博弈論總結

常用的4個博弈論演算法 巴什博奕,威佐夫博奕,尼姆博奕,斐波那契博弈 只有一堆n個物品,兩個人輪流從這堆物品中取物,規定每次至少取乙個,最多取m個。最後取光者得勝。顯然,如果n m 1,那麼由於一次最多只能取m個,所以,無論先取者拿走多少個,後取者都能夠一次拿走剩餘的物品,後者取勝。因此我們發現了如...

acm博弈論基礎

一 bash game 巴什博弈 一堆n個物品,兩個人輪流從中取出1 m個,最後取光者勝 不能繼續取的人輸 1,分析 首先n一定可以表示為 n k m 1 r 0 r m 二 wythoff game 威佐夫博弈 有兩堆各若干物品,兩個人輪流從任意一堆中至少取出乙個或者從兩堆中取出同樣多的物品,規定...