DOJ logoDOJ
题目
最近添加的题目收藏的题目Workbooks
分类DLC比赛小组团队讨论区
排名
解题数量排行榜连续解题排名DOJ Power 排行榜
评测状态
征题登录注册
DOJ logoDOJ

支持 OI 子任务计分、Elo 等级分和 Discord 认证的社区在线评测系统。

题目
题目列表分类
社区
比赛排名讨论区公告举办外部比赛指南
账号
登录注册评测状态
政策
服务条款DLC 使用规则隐私政策API 文档语言运行环境比赛排名奖励评级与表现
© 2026 DOJ
保留所有权利
题解

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)