蓝桥02 等差素数列 ——数论知识

题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

2,3,5,7,11,13,…2,3,5,7,11,13,… 是素数序列。 类似:7,37,67,97,127,1577,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。

上边的数列公差为 3030,长度为 66。

20042004 年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。 这是数论领域一项惊人的成果!

有这一理论为基础,请你借助手中的计算机,满怀信心地搜索:

长度为 1010 的等差素数列,其公差最小值是多少?

运行限制
最大运行时间:1s
最大运行内存: 128M

解题思路
百度了一下,发现所有小于等差素数列的长度的素数的乘积就是该等差素数列的公差。
若公差不是2的倍数,那么长度为10的等差数列里,必有一个2的倍数。所以,公差必须是2的倍数。同理,公差必须是3、5、7的倍数,所以求2、3、5、7的最小公倍数即可。而正因为2、3、5、7都是素数,所以它们的最小公倍数就是它们的积。

print(2*3*5*7)

你可能感兴趣的:(蓝桥杯Python,算法)