結果
問題 | No.612 Move on grid |
ユーザー |
![]() |
提出日時 | 2022-04-10 16:21:53 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 648 ms / 2,500 ms |
コード長 | 430 bytes |
コンパイル時間 | 218 ms |
コンパイル使用メモリ | 82,384 KB |
実行使用メモリ | 98,440 KB |
最終ジャッジ日時 | 2024-10-03 21:31:01 |
合計ジャッジ時間 | 7,359 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 17 |
ソースコード
import sys readline=sys.stdin.readline T=int(readline()) mod=10**9+7 a,b,c,d,e=map(int,readline().split()) m=max(abs(x) for x in (a,b,c)) M=m*T dp=[0]*(2*M+1) dp[M]=1 for t in range(T): prev=dp dp=[0]*(2*M+1) for i in range(2*M+1): for di in (a,-a,b,-b,c,-c): if 0<=i+di<2*M+1: dp[i+di]+=prev[i] dp[i+di]%=mod ans=sum(dp[max(d+M,0):min(e+M+1,2*M+1)])%mod print(ans)