题解 | #质数因子#

质数因子

https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607

m = int(input())

def f(m):
    prime_num =1  #假设质数标识1
    #对数字挨着做除法,范围到数字开根号后+1(一个数的质因子不会大于它的算术平方根+1的)
    for i in range(2,int(m**0.5+1)): 
        if m%i == 0: #能被整除,余数是0
            prime_num =0 #那就不是质数了
            print(i,end=' ')
            m = m//i 
            f(m) # 对它整除后的商,递归
            break #结束当前循环

    #最后m不能被整整除了,就是循环下的if执行不了了,直接打出最终的m
    if prime_num ==1:
        print(m,end=' ')
f(m) #调用

全部评论

相关推荐

群星之怒:不是哥们,你就不好奇瘫痪三十年的老植物人是啥样的吗?
点赞 评论 收藏
分享
pdd和快手oc一个就行:博士会要这点钱?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务