题解 | #质数因子#
质数因子
https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
import sys n = input() n = int(n) factors = [] # 处理 2 的因子 while n % 2 == 0: factors.append(2) n //= 2 # 处理 3 及以上的因子 这里迭代到n的平方根即可,这是为了降低复杂度 for i in range(3, int(n ** 0.5) + 1, 2): while n % i == 0: factors.append(i) n //= i # 如果 n > 2,则它必定是一个质数,直接输出 if n > 2: factors.append(n) for k in factors: print(k ,end=' ')