結果
問題 | No.1011 Infinite Stairs |
ユーザー | Ldio03 |
提出日時 | 2020-03-20 22:13:04 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 958 ms / 2,000 ms |
コード長 | 506 bytes |
コンパイル時間 | 349 ms |
コンパイル使用メモリ | 82,344 KB |
実行使用メモリ | 484,864 KB |
最終ジャッジ日時 | 2024-07-17 11:50:59 |
合計ジャッジ時間 | 8,771 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 24 |
ソースコード
n,d,k=map(int,input().split()) dp=[[0 for j in range(n*d+1)] for i in range(n+1)] dp[0][0]=1 dsum=[[0 for i in range(n*d+1)] for j in range(n+1)] dsum[0][0]=1 MOD=10**9+7 for i in range(1,n+1): for j in range(1,n*d+1): if j<=d: dp[i][j]=dsum[i-1][j-1] dsum[i][j]=dp[i][j]+dsum[i][j-1] dsum[i][j]%=MOD else: dp[i][j]=dsum[i-1][j-1]-dsum[i-1][j-d-1] dsum[i][j]=dp[i][j]+dsum[i][j-1] dsum[i][j]%=MOD print(dsum[n][k])