首页 > 其他 > 详细

B1013

时间:2019-12-21 23:46:43      阅读:98      评论:0      收藏:0      [点我收藏+]

python语言运行这道题有一个点运行超时,需要对求素数的算法进一步的优化

def isPrime(n):
    if n <= 1:
        return False
    i = 2
    while i * i <= n:
        if n % i == 0:
            return False
        i += 1
    return True

if __name__ == "__main__":
    str = input().split()
    m = int(str[0])
    n = int(str[1])

    prime = []
    num = 2
    prime.append(num)
    while len(prime) <= n:
        flag = 0
        for i in range(len(prime)): 
            if num < prime[i]:
                break
            if num % prime[i] == 0 :
                num += 1
                flag = 1
                break
    """    
        if isPrime(num):
            prime.append(num)
    """
    if flag == 0:
        prime.append(num)

    num = prime[m-1:n]

    while num:
        i = 0
        while len(num) > 1 and i < 9 :
            print(num.pop(0),end =  )
            i += 1
        if num:
            print(num.pop(0))

B1013

原文:https://www.cnblogs.com/wanghao-boke/p/12078585.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!