結果
問題 | No.1809 Divide NCK |
ユーザー |
![]() |
提出日時 | 2025-03-20 21:15:38 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 56 ms / 2,000 ms |
コード長 | 677 bytes |
コンパイル時間 | 160 ms |
コンパイル使用メモリ | 82,776 KB |
実行使用メモリ | 60,276 KB |
最終ジャッジ日時 | 2025-03-20 21:16:31 |
合計ジャッジ時間 | 3,360 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 39 |
ソースコード
def count_p_in_factorial(n, p):count = 0while n > 0:n = n // pcount += nreturn countN, K, M = map(int, input().split())# Factorize Mfactors = {}m = Mi = 2while i * i <= m:while m % i == 0:factors[i] = factors.get(i, 0) + 1m = m // ii += 1if m > 1:factors[m] = 1min_x = float('inf')for p, e in factors.items():cnt_n = count_p_in_factorial(N, p)cnt_k = count_p_in_factorial(K, p)nk = N - Kcnt_nk = count_p_in_factorial(nk, p) if nk != 0 else 0v_p = cnt_n - cnt_k - cnt_nkx_p = v_p // eif x_p < min_x:min_x = x_pans = min_x if min_x >= 0 else 0print(ans)