魔法遊戲 博弈論

2021-08-28 08:11:28 字數 797 閱讀 5475

題目大意:

給一顆樹,每個位置有乙個權值,每次乙個人可以選擇森林中的某棵樹的根節點,設其權值為a

aa,那麼這個人可以選擇乙個k∈[

2,a+

1]

k\in[2,a+1]

k∈[2,a

+1],然後讓a

aa變成⌊ak

⌋\left\lfloor\frac ak\right\rfloor

⌊ka​

⌋。如果乙個點權值變為0那麼就把這個點刪除。不能操作者輸,問誰贏。

題解:考慮乙個權值的二進位制位,那麼每次乙個點的二進位制位數會至少減1至多變成0。那麼一顆樹的sg就很好確定了。(其實直接暴力也可以不過沒什麼必要就直接寫的簡單了些。

#include

#define r return

#define rep(i,a,b)for(_ i=a;i<=b;i++)

using namespace std;

typedef

int _;

const _ n=

100010

;typedef

unsigned

long

long ull;_ gc()

ull i()

struct edgese[n<<1]

;_ h[n]

,e,s[n]

;_ a

(_ u,_ v)

_ d(_ x,_ fa=

0,_ t=0)

_ main()

r 0;

}

魔法球(博弈論)

time limit 1 sec memory limit 128 mb submit 15 solved 12 submit status web board freda和rainbow是超自然之界學校 preternatural kingdom university,簡稱pku 魔法學院的學生。...

博弈論 Nim遊戲

這種遊戲稱為nim博弈,遊戲過程中面臨的狀態成為局面。n im nimni m博弈不存在平局,只有先手必勝和先手必敗兩種情況。定理nim 博弈先手 必勝,當 且僅當a 1xora2 xor xoran 0nim博弈先手必勝,當且僅當 a 1 texta 2 text cdots text a n n...

石子遊戲 博弈論

有n n 堆石子,兩人輪流取石子,每次可以將一堆全部拿走,也可以選擇其中y y 個拿,但是要求y y 與這堆石子的總個數互質。求誰會勝利。明顯的博弈論之s g sg 函式。我們可以發現,質數的s g sg 值就等於上乙個質數的s g sg 值加一,而合數的s g sg值就是它的最小質因子的s g s...