한 번 지면에서 빛의 양 x가 위쪽으로 방출되었다고 하자.
i번째 대기층을 통과하는 비율은
100100−Ai
이다.
따라서 모든 대기층을 통과해 우주로 빠져나가는 비율을 S라고 하면,
S=i=1∏N100100−Ai
이다.
즉, 한 번 방출된 빛 x 중 Sx는 빠져나가고, 나머지 (1−S)x는 언젠가 지면으로 돌아온다.
처음 지면에 도달한 빛의 양은 100이다. 이후 지면으로 다시 돌아오는 비율은 매번 1−S이므로, 지면에 도달한 빛의 총량은 다음 등비급수와 같다.
100+100(1−S)+100(1−S)2+⋯
이 등비급수의 합은
1−(1−S)100=S100
이다.
따라서 정답은
∏i=1N100100−Ai100=100⋅i=1∏N100−Ai100=∏i=1N(100−Ai)100N+1
이다.
이를 모듈러 MOD=1000000007에서 계산하면 된다.
구체적으로,
100N+1⋅(i=1∏N(100−Ai))−1(modMOD)
를 출력하면 된다.
0≤Ai<100이므로 100−Ai는 1 이상 100 이하이다. 또한 MOD는 100보다 큰 소수이므로 분모는 MOD의 배수가 되지 않는다. 따라서 잉여역수가 항상 존재한다.
시간 복잡도는 O(N+logMOD)이다.