結果
問題 |
No.3236 累乗数大好きbot
|
ユーザー |
![]() |
提出日時 | 2025-08-15 22:09:54 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 975 bytes |
コンパイル時間 | 397 ms |
コンパイル使用メモリ | 82,588 KB |
実行使用メモリ | 96,772 KB |
最終ジャッジ日時 | 2025-08-15 22:10:47 |
合計ジャッジ時間 | 8,684 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 4 TLE * 1 -- * 26 |
ソースコード
from collections import defaultdict def prime_factorize(n): # https://note.nkmk.me/python-prime-factorization/ a = defaultdict(int) while n % 2 == 0: a[2] += 1 n //= 2 f = 3 while f * f <= n: if n % f == 0: a[f] += 1 n //= f else: f += 2 if n != 1: a[n] += 1 return a def sieve_of_eratosthenes(n): # https://af-e.net/python-sieve-of-eratosthenes/ primes = [True] * (n + 1) p = 2 while (p * p <= n): if primes[p]: for i in range(p * p, n + 1, p): primes[i] = False p += 1 return [p for p in range(2, n + 1) if primes[p]] p = sieve_of_eratosthenes(10**6) ans = [] Q = int(input()) for _ in range(Q): N = int(input()) a = set(prime_factorize(N).values()) for i in range(60,0,-1): if(all([x%i == 0 for x in a])): ans.append(str(i)) break print("\n".join(ans))