1. 程式人生 > 其它 >5.java資料型別的拓展

5.java資料型別的拓展

博弈論和$SG$函式

發現原來學的東西都忘了,一方面是第一遍不是很懂,還有就是做題不多,於是重新回顧了一下

博弈,其實差不多明白本質是狀態與狀態之間的轉化就好了


常見博弈

$1.$巴什博弈

一堆石子$n$個,取$1-m$個,$n=m+1$先手必敗,$n=k(m+1)+r$先手必勝,因為我們總能到另一個$n=k_1(m+1)+r_1$狀態,最後我們是$(m+1),$必勝

$2.$尼姆博弈

偶狀態必敗,奇狀態必勝,異或判斷即可

$3.$威佐夫博弈

奇異狀態必敗,否則必勝

$(a_k,b_k)$為奇異狀態當且僅當$a_k=k\times\lfloor\frac{\sqrt 5+1}{2}\rfloor,b_k=a_k+k$


$SG$函式

結論$:$遊戲和的$SG$函式等於各個遊戲的$Nim$和

大概就是我們這個和遊戲當前狀態的$SG$等於構成這個遊戲的所有遊戲的狀態的$Nim$和

$SG$函式可以形式化定義為

$SG(x)=mex(SG(a),SG(b),SG(c)...)$

其中$a,b,c$為$SG$的後繼狀態

其實$SG$函式可以看做我們之前$Nim$遊戲的每個狀態,然後異或起來得到的結果判定勝負