zoukankan      html  css  js  c++  java
  • 第八届蓝桥杯第二题:等差素数列

    标题:等差素数列

    2,3,5,7,11,13,....是素数序列。
    类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。
    上边的数列公差为30,长度为6。


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


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

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

    注意:需要提交的是一个整数,不要填写任何多余的内容和说明文字。


    答案:210

    思路:先打表,然后暴力搜。

    #include<bits/stdc++.h>
    using namespace std;
    const int x=1e6;
    int a[x];
    int main()
    {
    	int i,j,k,d;
    	memset(a,0,sizeof(0));
    	a[0]=a[1]=1;
    	for(i=2;i<=1e6;i++)
    	{
    		if(a[i]==0)
    		{
    			for(j=2;i*j<=1e6;j++) a[i*j]=1;
    		}
    	}
    	for(j=0;j<=1e6;j++)
    	{
    		for(d=1;d<=1e3;d++)
    		{
    			for(k=0;k<10;k++)
    			{
    				if(a[j+d*k]!=0) break;
    			}
    			if(k==9)
    			{
    				cout<<d<<endl;
    				//break;
    				return 0;//当找到d的时候结束程序,用break只会停止d的循环,导致输出好多数据 
    			} 
    		}
    	}
    	return 0;
    }

  • 相关阅读:
    管道通讯
    C++类型转换
    自定义数组容器MyArray框架
    vue 转场动画
    身份证信息 获取年龄性别生日
    element ui +vue 输入 身份证号获取 性别 年龄 籍贯
    获取地理位置
    post 下载二进制pdf文件
    post 文件下载二进制流
    遍历对象的几中方法
  • 原文地址:https://www.cnblogs.com/Friends-A/p/9309041.html
Copyright © 2011-2022 走看看