結果
| 問題 |
No.1086 桁和の桁和2
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2021-06-19 14:01:54 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 424 ms / 3,000 ms |
| コード長 | 754 bytes |
| コンパイル時間 | 242 ms |
| コンパイル使用メモリ | 82,432 KB |
| 実行使用メモリ | 108,868 KB |
| 最終ジャッジ日時 | 2024-06-22 21:59:05 |
| 合計ジャッジ時間 | 10,663 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 5 |
| other | AC * 31 |
ソースコード
import sys
input = lambda : sys.stdin.readline().rstrip()
sys.setrecursionlimit(2*10**5+10)
write = lambda x: sys.stdout.write(x+"\n")
debug = lambda x: sys.stderr.write(x+"\n")
writef = lambda x: print("{:.12f}".format(x))
M = 10**9+7
n = int(input())
l = list(map(int, input().split()))
r = list(map(int, input().split()))
d = list(map(int, input().split()))
ans = 1
prv = 0
inv9 = pow(9, M-2, M)
zero = 1
for i in range(n):
dd = d[i] - prv
prv = d[i]
v = (pow(10, r[i], M) - pow(10, l[i], M)) * inv9 % M
if d[i]!=0:
zero = 0
if d[i]==0 and not zero:
ans = 0
if dd==0:
if zero:
val = 1
else:
val = 1 + v
else:
val = v
ans *= val
ans %= M
print(ans%M)