zoukankan      html  css  js  c++  java
  • python-趣味百题3

    等差素数数列:类似7、37、67、97;107、137、167、197这样由素数组成的数列。
    素数数列具有项数的限制,一般指素数数列的项数有多少个连续项,最多可以存在多少个连续项
    编程找出100以内的等差素数数列
    思路:
    1.筛法找出100以内所有素数
    2.对于素数list内两两组合,构造等差数列a0,a1项
    3.计算出a2,查表判断a2是否有素数,是素数则能构造成素数等差序列,计算a3...
    def findAllPrime(n):
        pt = [True] * n
        prime = []
        for p in range(2,n):
            if not pt[p]:continue
            prime.append(p)
            for i in range(p * p, n, p):
                pt[i] = False
        return prime,pt
    prime, pt = findAllPrime(100)
    print prime
    for i in range(len(prime)):
        for j in range(i+1,len(prime)):
            a0,a1 = prime[i],prime[j]
            an = a1 + a1-a0
            s =[]
            while an < 100 and pt[an]:
                s.append(an)
                an+=a1-a0
            if s:
                print [a0,a1] + s

  • 相关阅读:
    Tensorflow-K近邻算法
    RDD编程初级实践
    Spark_RDD
    《软件需求》阅读笔记三
    Spark简单使用案例-WordCount
    tensorflow线性回归
    Scala+idea环境配置和简单使用
    《软件需求》阅读笔记二
    Typora+PicGo+Gitee打造博客图床
    sklearn转换器和估计器&k-近邻
  • 原文地址:https://www.cnblogs.com/lucia8522/p/6728783.html
Copyright © 2011-2022 走看看