DOJ logoDOJ
問題
最近追加された問題保存した問題Workbooks
カテゴリDLCコンテストグループチーム掲示板
ランキング
正解数ランキングストリークランキングDOJ Powerランキング
提出状況
問題募集ログイン新規登録
DOJ logoDOJ

OI形式のサブタスク採点、Eloレーティング、Discord認証を備えたオンラインジャッジです。

問題
問題一覧カテゴリ
コミュニティ
コンテストランキング掲示板お知らせ外部のコンテストを開催するガイド
アカウント
ログイン新規登録ジャッジ状態
ポリシー
利用規約DLCの利用規則プライバシーAPI 文書言語ランタイムコンテストの順位報酬レーティングとパフォーマンス
© 2026 DOJ
All rights reserved
解説

N rooms

問題に戻る

解説

P=p0+p1+⋯+pNP=p_0+p_1+\cdots+p_NP=p0​+p1​+⋯+pN​라 하자. EiE_iEi​를 과정이 끝나기 전까지 따스가 iii번 방에서 머무르는 시간의 기댓값이라 하고, 편의를 위해 EN+1=0E_{N+1}=0EN+1​=0으로 둔다.

iii번 문을 기준으로 왼쪽에서 오른쪽으로 통과한 횟수를 RiR_iRi​, 오른쪽에서 왼쪽으로 통과한 횟수를 LiL_iLi​라 하자. 따스는 처음에는 ii번 문의 왼쪽에 있고 마지막에는 오른쪽에 있으므로, 모든 시행에서

Ri−Li=1R_i-L_i=1Ri​−Li​=1

이 성립한다.

따스가 iii번 방에 있는 매분마다 iii번 문을 통해 오른쪽으로 이동할 확률은 piP\frac{p_i}{P}Ppi​​이다. 따라서

E[Ri]=EipiP.\mathbb E[R_i]=E_i\frac{p_i}{P}.E[Ri​]=Ei​P

마찬가지로

E[Li]=Ei+1piP.\mathbb E[L_i]=E_{i+1}\frac{p_i}{P}.E[Li​]=Ei+1​P

두 식을 빼면

(Ei−Ei+1)piP=1(E_i-E_{i+1})\frac{p_i}{P}=1(Ei​−Ei+1​)P

이므로

Ei−Ei+1=PpiE_i-E_{i+1}=\frac{P}{p_i}Ei​−Ei+1​=

이다.

이를 iii부터 NNN까지 더하고 EN+1=0E_{N+1}=0EN+1​=0을 이용하면

Ei=P∑k=iN1pkE_i=P\sum_{k=i}^{N}\frac{1}{p_k}Ei​=Pk=i∑N​

를 얻는다.

따라서 모든 pip_ipi​의 모듈러 역원을 구한 뒤, 오른쪽에서 왼쪽으로 역원의 누적합을 관리하면 모든 답을 구할 수 있다.

각 역원을 페르마의 소정리로 따로 계산하면 O(Nlog⁡998244353)O(N\log 998244353)O(Nlog998244353)에 해결할 수 있다. 더 빠르게는 모든 pip_ipi​의 누적곱을 만든 뒤 전체 곱의 역원을 한 번만 구하고 역순으로 진행하는 일괄 역원 계산을 사용하여 O(N+log⁡998244353)O(N+\log 998244353)O(N+에 해결할 수 있다.

Solution written by GPT5.6

i
pi​
​
.
pi​
​
.
pi​
​
=
1
p
i​
P
​
pk​1​
log998244353)