题解 | #质数因子#

质数因子

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

import math


def is_prime(number) -> bool:
    number = int(number)
    if number == 1:
        return False
    for t in range(2, int(math.sqrt(number) + 1)):
        if not number % t:
            return False
    return True


def cout_order_prime(number):
    if number <= 3 and number!=1:
        print(number,end=' ')
        return
    # 1.find the minimum prime
    min_prime = -1
    if is_prime(number):
        min_prime = number
    else:
        for t in range(2, int(math.sqrt(number) + 1)):
            if not number % t and is_prime(t):
                min_prime = t
                break
    # 2.continue to call this function
    if min_prime!=-1:
        print(min_prime,end=' ')
    else:
        return
    cout_order_prime(int(number / min_prime))


a = int(input())
cout_order_prime(a)

全部评论

相关推荐

04-13 11:05
中国海洋大学
ResourceUtilization:两万块的算法专家给HR自己都整笑了
点赞 评论 收藏
分享
程序员牛肉:这一眼假啊,基本上都是骗人的,不然就涉及到职位贪腐了,就像之前华为的OD事件,看你运气好不好了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务