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;
    }

  • 相关阅读:
    POJ 3672 水题......
    POJ 3279 枚举?
    STL
    241. Different Ways to Add Parentheses
    282. Expression Add Operators
    169. Majority Element
    Weekly Contest 121
    927. Three Equal Parts
    910. Smallest Range II
    921. Minimum Add to Make Parentheses Valid
  • 原文地址:https://www.cnblogs.com/Friends-A/p/9309041.html
Copyright © 2011-2022 走看看