Description
妹滋滋从 ((0,0)) 开始,每天可以往上下左右四个方向中的一个方向移动一个单位的距离。每天随机选择一个方向走,上下左右方向的权值分别是 (w_1,w_2,w_3,w_4) 走每个方向的概率和他的权值成正比。询问 (n) 天后经过不同位置个数的方差 (V imes(w_1+w_2+w_3+w_4)^n) 对 (998244353) 取模后的值。
Solution
首先,对于离散随机变量 (X_1,X_2dots X_n) ,设 (X) 的方差为 (D(X)),则有
那么方差就等于平方的期望减期望的平方,那么我们现在就要求这两项。
对一次和的求解
首先考虑每个点对答案的贡献,必定是在第一次经过时产生贡献。
设 (f[i]) 表示第一次经过 (i) 步后到达格子的方案数,注意我们不关心这个格子是哪一个。
由于外层乘了总方案,设 (sum=w_1+w_2+w_3+w_4),那么走 (i) 步后的总方案就是 (sum^i)。
考虑容斥,所有不合法的方案都是在 ([0,i-1]) 中走到了 (i) 步的位置,并且用剩下的时间再走了回来。
设在第 (j) 步走到 (i),那么就用 (j-i) 步走回来,方案数可以预处理,设为 (C_{j-i})。
那么就有 (f[i]=sum^i-sum_{j=0}^{i-1}f[j]C_{j-i}),总和为 (sum_{i=0}^nf[i] imes sum^{n-i})。
对二次和的求解
对于一种方案展开:(E((s_i+s_j+dots)^2)=E^2(s_i)+E^2(s_j)+2E(s_is_j)dots),其中 (s_i) 表示第 (i) 步到达的格子是否是首次到达的。
那么可以 (dp),设 (g[k][x][y]) 表示走了 (k) 步,其中纵方向比走了 (i) 步时多走的状况是 (x),横方向多走的状况是 (y) 的方案数。也就是 (i-k) 步走出了一个 ((x,y)) 的向量。
其中走 (i) 步到的地方是首次经过的,那么可以使用 (f[i])。
用 (j) 步走一个固定向量 ((x,y)) 的方案数可以递推出来,设为 (h[j][x][y])。(其中 (C_i=h[i][0][0]))。
有:
但是这样会算重,算重的部分就是 (j) 步后到的格子(设为 (P))被经过两次。
这里分类讨论一下,看是在走 (i) 步到的格子 (Q) 前被经过还是 (Q) 后:
-
先经过了 (P),再绕了个圈经过 (P)。这种情况在绕圈的时候不能经过 (Q),方案数为 (g[j][x][y] imes (C_{k-j}-W[k-j][-x][-y]))。
-
先经过 (P),再经过 (Q),再经过 (P) 。这样就是 (f[j] imes W[k-j][x][y])
其中 (W[i][x][y]) 表示从出发点走了 (i) 步绕回来,并且经过了和出发点呈 ((x,y)) 向量的点。
最后的问题就是求 (W) 了。
枚举走了 (j) 步后形成 ((x,y)) 的向量,那么剩下 (i-j) 步就形成了 ((-x,-y)) 的向量,但是不能经过出发点。
所以
其中 (dp) 数组表示上方斜体的方案,求解只需要用 (h) 减去过 ((0,0)) 的圈就行了。
最后统计答案:
至此,本题得到了完美的解决。