結果
問題 | No.1063 ルートの計算 / Sqrt Calculation |
ユーザー |
|
提出日時 | 2020-06-07 12:06:53 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 33 ms / 2,000 ms |
コード長 | 619 bytes |
コンパイル時間 | 345 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 10,752 KB |
最終ジャッジ日時 | 2024-12-23 16:41:32 |
合計ジャッジ時間 | 1,395 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 14 |
ソースコード
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 n=int(input()) fa = factorization(n) a0 = 1 a1 = 1 # print(fa) for p in fa: if p[1] == 1: a1 *= p[0] elif p[1]%2 == 0: a0 *= p[0] ** (p[1]//2) else: a1 *= p[0] a0 *= p[0] ** (p[1]//2) print(a0, a1)