題意
你正在一個數軸上隨機遊走。一開始,你在位置 。每一時刻,你有 $ \frac{1}{2}$ 的概率往左走,還有 的概率往右走。定義一個方向係數,當你往左走時 爲 ,反之往右走 爲 。同時,我們給定了一個長度爲 的序列 。假如當前在位置 ,那麼在選定方向之後,下一步有 的概率在 。
假如走完之後,你落在了某一個位置 ,那麼你會直接到達 的位置;假如你落在了某一個位置 ,那麼你會直接到達 的位置。
現在你按照上述規則,隨機遊走了步。請你求出,你最終到達每個點的概率在模 意義下的結果。顯然,最終到達的一定是 到 之間的某一個整點。
Subtask 1 (3pts):。
Subtask 2 (12pts):
Subtask 3 (23pts):
Subtask 4 (11pts): $ \forall 2 \le i \le N,A_i=0$
Subtask 5 (27pts):
Subtask 6 (24pts):無特殊限制。
對於全部數據:
題解
考慮遊走的過程,發現是一個碰壁就回退的循環,考慮構造循環卷積。如果循環節是n顯然不太行,發現從到再回到可看作一個循環節,於是構造一個長度爲的多項式,到項依次是代表從走到,後項依次是代表從走到。由於兩個方向的概率都是,這樣向原來方向走相當於右移,向相反方向走相當於左移,如果越界的話則在的意義下是等價的,故直接循環卷積快速冪即可。