题解 | 质数因子
质数因子
https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
n = int(input().strip())
# 结果列表
prime_factor = []
# 用dividend作为待分解数
dividend = n
# 质因数求解步骤1
# 不建立质数列表,直接从2开始检查是否可以整除,将所有可以整除的数加入结果列表中
i = 2
while i*i <= dividend: # 可整除数的限制条件
if dividend % i == 0:
prime_factor.append(i)
dividend //= i
else:
i += 1
# 质因数求解步骤2——当待分解数本身就是一个大质子数
if dividend > 1:
prime_factor.append(dividend)
for x in prime_factor:
print(x, end = ' ')
- 列表内值可变,元组内值不可变
- 列表的使用:[],.append(),.pop()
- 质数的定义:从2开始,小于本身的质数都小于本身的开方。只有一个质子数的数其质子数等于自身。
