等差素数列

来源:互联网 发布:上古卷轴5御姐捏脸数据 编辑:程序博客网 时间:2024/06/08 18:07

2,3,5,7,11,13,….是素数序列。
类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。
上边的数列公差为30,长度为6。
2004年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。
这是数论领域一项惊人的成果!
有这一理论为基础,请你借助手中的计算机,满怀信心地搜索:
长度为10的等差素数列,其公差最小值是多少?
注意:需要提交的是一个整数,不要填写任何多余的内容和说明

枚举法,枚举了所有的首项和公差。

#include <iostream>using namespace std;int prime[100000] = {0};bool isPrime(int n){    for (int i = 2; i <= n - 1; i++)    {        if (n * 1.0 / i - n / i == 0)        {            return false;        }    }    return true;}int main(){    int debug = 0;    for (int start = 1; start <= 100000; start++)    {        for (int tol = 1; tol <= 10000; tol++)        {            int countTol = 10;            int primeTemp = start;            while (countTol--)            {                if (!isPrime(primeTemp))                {                    break;                }                primeTemp += tol;                if (countTol == 0)                {                    cout << "start: " << start << " tol: " << tol << endl;                    return 0;                }            }        }    }    return 0;}
0 0
原创粉丝点击