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

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

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

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