結果
問題 | No.1043 直列大学 |
ユーザー |
![]() |
提出日時 | 2020-05-28 22:55:08 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 416 ms / 2,000 ms |
コード長 | 606 bytes |
コンパイル時間 | 291 ms |
コンパイル使用メモリ | 82,076 KB |
実行使用メモリ | 125,208 KB |
最終ジャッジ日時 | 2024-12-22 20:07:52 |
合計ジャッジ時間 | 4,818 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 28 |
ソースコード
import sys input=lambda: sys.stdin.readline().rstrip() n,m=map(int,input().split()) V=[int(i) for i in input().split()] R=[int(i) for i in input().split()] a,b=map(int,input().split()) v,r=sum(V),sum(R) VT=[1]+[0]*v RT=[1]+[0]*r for i in range(n): for j in range(v)[::-1]: if j+1>=V[i]: VT[j+1]+=VT[j+1-V[i]] for i in range(m): for j in range(r)[::-1]: if j+1>=R[i]: RT[j+1]+=RT[j+1-R[i]] VTT=[0] for i in range(v+1): VTT.append(VTT[-1]+VT[i]) mod=10**9+7 ans=0 for i in range(r+1): ans+=(VTT[min(v+1,i*b+1)]-VTT[min(v+1,i*a)])*RT[i] if ans>mod: ans%=mod print(ans-1)