牛客 11257 D Gambling Monster 題解
阿新 • • 發佈:2021-08-04
【大意】
初始時,"土塊"有一個數字 \(0\) 。每一輪,他有 \(p_i(0\leq i<n=2^k)\) 的概率抽到數字 \(i\) 。若當前他的數字異或上抽中的數字,將會變得更大,那他會異或上這個數字。問他得到 \((n-1)\) 的期望步數。
【分析】
HL:以後遇到概率 dp 通通倒著跑
所以我們設 \(E(x)\) 表示 \(x\) 到 \((n-1)\) 的期望步數,則有:
\(\displaystyle E(x)=\sum_{x\oplus y=z\\x<z}p_y[E(z)+1]+\sum_{x\oplus y=z\\x\geq z}p_y[E(x)+1]\)
即當轉到的數字會使得結果更大,就異或上,所以貢獻直接由新的結果轉移而來;當不會時,就不異或上了,所以貢獻由自己轉移
為了方便,我們記 \(\displaystyle \sum_{x\oplus y=z\\x<z}p_y=S_x\),則:
\(\displaystyle E(x)=\sum_{x\oplus y=z\\x<z}p_y[E(z)+1]+(1-S_x)[E(x)+1]\)
\(\displaystyle E(x)-(1-S_x)E(x)=\sum_{x\oplus y=z\\x<z}p_yE(z)+S_x+(1-S_x)\)
\(\displaystyle E(x)={1\over S_x}[\sum_{x\oplus y=z\\x<z}p_yE(z)+1]\)