結果
| 問題 | No.3717 GCD LCM GCD |
| コンテスト | |
| ユーザー |
👑 |
| 提出日時 | 2026-08-28 20:53:59 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
WA
不安定
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 761 bytes |
| 記録 | |
| コンパイル時間 | 69 ms |
| コンパイル使用メモリ | 81,152 KB |
| 実行使用メモリ | 114,688 KB |
| 最終ジャッジ日時 | 2026-09-18 20:50:44 |
| 合計ジャッジ時間 | 4,994 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 4 WA * 4 |
ソースコード
from collections import Counter
LIM = 10**6
is_prime = [True] * (LIM + 1)
is_prime[0] = is_prime[1] = False
for i in range(2, LIM + 1):
if not is_prime[i]:
continue
for j in range(2 * i, LIM + 1, i):
is_prime[j] = False
primes = [i for i in range(LIM + 1) if is_prime[i]]
N, K = [int(s) for s in input().split()]
A = [int(s) for s in input().split()]
count_a = Counter(A)
ans = 1
for p in primes:
count = [0] * 30
for i in range(p, LIM + 1, p):
for j in range(30):
if p**j > LIM or i % (p**j) != 0:
break
count[j] += count_a[i]
if all(count[i] <= N // 2 for i in range(30)):
continue
ans *= p ** max(i for i in range(30) if count[i] > N // 2)
print(ans)