結果
問題 | No.1785 Inequality Signs |
ユーザー |
![]() |
提出日時 | 2021-12-14 00:19:39 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 361 ms / 2,000 ms |
コード長 | 627 bytes |
コンパイル時間 | 352 ms |
コンパイル使用メモリ | 82,124 KB |
実行使用メモリ | 76,160 KB |
最終ジャッジ日時 | 2024-07-23 00:20:03 |
合計ジャッジ時間 | 12,717 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 52 |
ソースコード
n,k=map(int,input().split()) mod=10**9+7 fac=[0]*(2*n+2) cnt=1 fac[0]=1 for i in range(2*n+1): cnt*=k+n-i cnt%=mod fac[i+1]=cnt fac2=[0]*(n+2) fac2[0]=1 cnt=1 for i in range(n+1): cnt*=i+1 cnt%=mod fac2[i+1]=cnt gya=[0]*(n+2) cnt=1 gya[0]=1 for i in range(n+1): cnt*=pow(i+1,mod-2,mod) cnt%=mod gya[i+1]=cnt ans=0 for i in range(n): if i<=k-1: num=fac2[n-1]*gya[n-i-1]%mod num*=gya[i] num%=mod # k+n-1-i C n num2=(fac[i+n+1]*pow(fac[i+1],mod-2,mod))%mod num2*=gya[n] num2%=mod ans+=num*num2%mod ans%=mod print(ans)