結果
問題 |
No.2017 Mod7 Parade
|
ユーザー |
|
提出日時 | 2022-07-22 23:43:53 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 676 ms / 2,000 ms |
コード長 | 562 bytes |
コンパイル時間 | 149 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 81,740 KB |
最終ジャッジ日時 | 2024-07-04 08:37:08 |
合計ジャッジ時間 | 9,246 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 |
ソースコード
k = int(input()) D = [] for _ in range(k): d, l = map(int, input().split()) r = (pow(10, l, 7 * 9) - 1) // 9 * d % 7 D.append((r, l)) mod = 10**9 + 7 ans = 0 DP = [0 for _ in range(7)] for r, l in D: NDP = [0 for _ in range(7)] ans += r ans %= mod NDP[r] += 1 for i in range(7): if DP[i]: nr = (i * pow(10, l, 7) + r) % 7 ans += DP[i] * nr ans %= mod NDP[nr] += DP[i] NDP[nr] %= mod NDP[i] += DP[i] NDP[i] %= mod DP = NDP print(ans)