题解 | #质数因子#

质数因子

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

首先要知道质因数要>=2且小于自身的平方根,故只要遍历到平方根,并使用遍历到的数去除初始值,并且每求出一个公因数就打印并将初始值除以公因数后再继续迭代

此外存在质数的情况,即只有自身是质因数,故这种情况需要考虑从2开始的质数,故最终剩余的num值>=2需要打印

import math
num = int(input())
for x in range(2, int(math.sqrt(num))+1):
    while num % x == 0:
        print(x, end=' ')
        num = num // x
if num >= 2:
    print(num)
全部评论
170 2 5 17
点赞 回复 分享
发布于 2024-02-26 10:54 广东
(我没做出来,看了这个算法后的心得) 1、求质素,做除数; 2、循环除质数,求商; 3、质数从小到大,所以也不用再进行排序。
点赞 回复 分享
发布于 2022-05-08 20:56

相关推荐

不要停下啊:大二打开牛客,你有机会开卷了,卷起来,去找课程学习,在牛客上看看大家面试笔试都需要会什么,岗位有什么需求就去学什么,努力的人就一定会有收获,这句话从来都经得起考验,像我现在大三了啥也不会,被迫强行考研,炼狱难度开局,啥也不会,找工作没希望了,考研有丝丝机会
点赞 评论 收藏
分享
评论
15
收藏
分享

创作者周榜

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