結果
問題 |
No.1044 正直者大学
|
ユーザー |
![]() |
提出日時 | 2022-12-02 11:04:53 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 235 ms / 2,000 ms |
コード長 | 424 bytes |
コンパイル時間 | 362 ms |
コンパイル使用メモリ | 82,176 KB |
実行使用メモリ | 79,696 KB |
最終ジャッジ日時 | 2024-10-09 13:59:58 |
合計ジャッジ時間 | 4,069 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 28 |
ソースコード
N, M, K = map(int, input().split()) mod =10**9+7 fac = [0]*(max(N,M)+1) inv = [0]*(max(N,M)+1) fac[0]=inv[0]=1 for i in range(1,max(N,M)+1): fac[i] = (fac[i-1]*i)%mod inv[i] = (inv[i-1]*pow(i,mod-2,mod))%mod cnt = 0 for i in range(1,min(N,M)+1): if N+M-2*i>=K: cnt += (fac[N-i+i-1]*inv[N-i]*inv[i-1]*fac[M-i+i-1]*inv[M-i]*inv[i-1]*pow(i,mod-2,mod))%mod cnt %= mod print((cnt*fac[N]*fac[M])%mod)