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

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

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

Reflected Light

返回题目

题解

한 번 지면에서 빛의 양 xxx가 위쪽으로 방출되었다고 하자.

iii번째 대기층을 통과하는 비율은

100−Ai100\frac{100-A_i}{100}100100−Ai​​

이다.

따라서 모든 대기층을 통과해 우주로 빠져나가는 비율을 SSS라고 하면,

S=∏i=1N100−Ai100S = \prod_{i=1}^{N} \frac{100-A_i}{100}S=i=1∏N​100100−

이다.

즉, 한 번 방출된 빛 xxx 중 SxSxSx는 빠져나가고, 나머지 (1−S)x(1-S)x(1−S)x는 언젠가 지면으로 돌아온다.

처음 지면에 도달한 빛의 양은 100100100이다. 이후 지면으로 다시 돌아오는 비율은 매번 1−S1-S1−S이므로, 지면에 도달한 빛의 총량은 다음 등비급수와 같다.

100+100(1−S)+100(1−S)2+⋯100 + 100(1-S) + 100(1-S)^2 + \cdots100+100(1−S)+100(1−S)2+⋯

이 등비급수의 합은

1001−(1−S)=100S\frac{100}{1-(1-S)} = \frac{100}{S}1−(1−S)100​=S100

이다.

따라서 정답은

100∏i=1N100−Ai100=100⋅∏i=1N100100−Ai=100N+1∏i=1N(100−Ai)\frac{100}{\prod_{i=1}^{N} \frac{100-A_i}{100}} = 100 \cdot \prod_{i=1}^{N} \frac{100}{100-A_i} = \frac{100^{N+1}}{\prod_{i=1}^{N}(100-A_i)}∏i=1N

이다.

이를 모듈러 MOD=1 000 000 007MOD = 1\,000\,000\,007MOD=1000000007에서 계산하면 된다.

구체적으로,

100N+1⋅(∏i=1N(100−Ai))−1(modMOD)100^{N+1} \cdot \left(\prod_{i=1}^{N}(100-A_i)\right)^{-1} \pmod{MOD}100N+1⋅(i=1

를 출력하면 된다.

0≤Ai<1000 \le A_i < 1000≤Ai​<100이므로 100−Ai100-A_i100−Ai​는 이상 이하이다. 또한 는 보다 큰 소수이므로 분모는 의 배수가 되지 않는다. 따라서 잉여역수가 항상 존재한다.

시간 복잡도는 O(N+log⁡MOD)O(N+\log MOD)O(N+logMOD)이다.

Ai​
​
​
​
100100−Ai​​
100
​
=
100⋅
i=1∏N​100−Ai​100​=
∏i=1N​(100−Ai​)100N+1​
∏
N
​
(
100
−
Ai​
)
)
−1
(modMOD)
111
100100100
MODMODMOD
100100100
MODMODMOD