結果
| 問題 |
No.811 約数の個数の最大化
|
| コンテスト | |
| ユーザー |
1235486527
|
| 提出日時 | 2019-12-19 17:26:14 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 753 bytes |
| コンパイル時間 | 81 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 11,008 KB |
| 最終ジャッジ日時 | 2024-07-07 01:33:21 |
| 合計ジャッジ時間 | 2,943 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 9 WA * 3 |
ソースコード
import math
def count_prime_factor(N):
ret = 0
tmp = N
c = int(-(-math.sqrt(N)//1))+1 + 1
for n in range(2, c):
while tmp % n == 0:
tmp = tmp // n
ret += 1
if tmp == 1:
break
if ret:
return ret
else:
return 1
def count_divisor(N):
ret = 0
c = int(-(-math.sqrt(N)//1))+1 + 1
for i in range(1, c):
if N % i == 0:
ret += 1
if N != i * i:
ret += 1
return ret
N, K = map(int, input().split())
max_d = 0
ans = 0
for n in range(1, N):
gcd = math.gcd(N, n)
if count_prime_factor(gcd) >= K:
d = count_divisor(n)
if max_d < d:
max_d = d
ans = n
print(ans)
1235486527