結果
問題 | No.189 SUPER HAPPY DAY |
ユーザー |
![]() |
提出日時 | 2021-02-25 10:26:02 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 726 ms / 5,000 ms |
コード長 | 630 bytes |
コンパイル時間 | 240 ms |
コンパイル使用メモリ | 82,096 KB |
実行使用メモリ | 135,496 KB |
最終ジャッジ日時 | 2024-09-25 09:03:59 |
合計ジャッジ時間 | 7,661 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 23 |
ソースコード
from itertools import product M,D = input().split() mod = 10**9+9 def count(a): n = len(a) dp=[[[0] * 1801 for i in range(2)] for j in range(n+1)] dp[0][0][0] = 1 for i, less, ketawa in product(range(n), (0,1), range(1801)): max_d = 9 if less else int(a[i]) for d in range(max_d+1): less_ = less or d < max_d ketawa_ = ketawa + d if ketawa_<=1800: dp[i + 1][less_][ketawa_] += dp[i][less][ketawa] return dp[n] ML = count(M) DL = count(D) ans = 0 for i in range(1,1801): ans += (ML[0][i]+ML[1][i])*(DL[0][i]+DL[1][i]) print(ans%mod)