博弈專題 nim博弈變形 先取完輸

2021-09-20 15:38:23 字數 529 閱讀 7845

密碼:2019

題目大意:

愛麗絲和鮑勃正在玩misèrenim遊戲。misèrenim是乙個玩k堆石頭的遊戲,每堆都包含一塊或多塊石頭。球員交替遊戲,並且在每個回合中玩家可以選擇其中乙個堆,並且可以從該堆中移除若干石塊,除非堆是空的。在每個回合中,玩家必須從任何堆中移除至少一塊石頭。愛麗絲首先開始。移除最後一塊石頭的玩家將輸掉遊戲。

如果alice贏了,列印案例編號和』alice』,否則列印』bob』。

思路:nim博弈就是勝利和失敗的條件換了一下。當然還有乙個特例:就是所有堆的石子都為1時。這個時候判斷石頭的堆數的奇偶性判斷輸贏。

#include

#define ll long long

using

namespace std;

intmain()

ans^

=a;}

if(k!=n)

else

}else

else}}

return0;

}

博弈論 Nim博弈 反Nim博弈 SG函式

nim遊戲 hdu1846 若各堆石子異或和為不為零,則先手勝 後手當且僅當異或和為零時取勝 此題問要想先手取勝第一步的取法,考慮到上述引理,只需遍歷一遍石子找到異或和的最高位匹配的個數。int a 105 int main return0 view code hdu 1848 在上題的基礎上取法只...

Nim博弈與Anti Nim博弈

nim博弈的原題 問題1 今有若干堆火柴,兩人依次從中拿取,規定每次只能從一堆中取若干根,可將一堆全取走,但不可不取,最後取完者為勝,求必勝的方法。定義 若所有火柴數異或為0,則該狀態被稱為利他態,用字母t表示 否則,為利己態,用s表示。注意 這篇博文是先定義s和t,再通過它們的性質推出結論。定理1...

博弈論 Nim博弈

1.nim博弈的起源很早,至於歷史我們就不再說了,直接說它的使用場景。1 依舊是兩個人博弈,但是物品時n堆,每一堆有ai個。2 每個人可以挑選一堆取走若干個,但是不能不取。3 最先取完所有物品的人獲勝。4 結論 所以堆的物品的數量異或起來是0,先手必敗。2.乙個nim博弈的例項 nim博弈。乍一看這...