結果

問題 No.802 だいたい等差数列
ユーザー tpyneriver
提出日時 2019-03-18 21:50:06
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 1,409 ms / 2,000 ms
コード長 329 bytes
コンパイル時間 261 ms
コンパイル使用メモリ 82,048 KB
実行使用メモリ 87,936 KB
最終ジャッジ日時 2024-07-19 05:14:42
合計ジャッジ時間 8,686 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 30
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

N, M, D1, D2 = map(int, input().split())
mod = 10**9 + 7
D = D2 - D1
x = (M - 1) - D1*(N - 1)
fac = [1 for _ in range(N+x+1)]
for i in range(N+x):
fac[i+1] = (i+1)*fac[i]%mod
print(sum([(-1)**j * fac[x+N-j*(D+1)] * pow(N*fac[x-j*(D+1)]*fac[j]*fac[N-j-1], mod - 2, mod)\
for j in range(min(N, 1+x//(D+1)))])%mod)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0