結果
問題 |
No.3248 構築問題
|
ユーザー |
|
提出日時 | 2025-08-29 21:36:02 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 978 bytes |
コンパイル時間 | 296 ms |
コンパイル使用メモリ | 82,228 KB |
実行使用メモリ | 60,280 KB |
最終ジャッジ日時 | 2025-08-29 21:36:11 |
合計ジャッジ時間 | 1,255 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 5 WA * 5 |
ソースコード
def factorization(n): arr = [] temp = n for i in range(2, int(-(-n**0.5//1))+1): if temp%i==0: cnt=0 while temp%i==0: cnt+=1 temp //= i arr.append([i, cnt]) if temp!=1: arr.append([temp, 1]) if arr==[]: arr.append([n, 1]) return arr def make_divisors(n): lower_divisors , upper_divisors = [], [] i = 1 while i*i <= n: if n % i == 0: lower_divisors.append(i) if i != n // i: upper_divisors.append(n//i) i += 1 return lower_divisors + upper_divisors[::-1] import sys input = sys.stdin.readline n, x = map(int, input().split()) D = make_divisors(n) for b in D: ax = n//b F = factorization(ax) tmp = 1 for p, e in F: if e!=x: tmp = 0 break tmp *= p if tmp>0 and tmp!=b: print("Yes") exit() print("No")