等差素数列
技巧
这里的等差数列–首项需要枚举列出
公差也需要枚举列出
在公差为1开始,对n-1也进行枚举
//重要代码段 判断一个数是否为素数
int check(int n)
{
for(int i=2;i<n;++i){
if(n%i==0){
return 0
}
return 1;
}
}
这道题不是很简单
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
2,3,5,7,11,13,… 是素数序列。 类似:7,37,67,97,127,157
这样完全由素数组成的等差数列,叫等差素数数列。上边的数列公差为 30,长度为 6。
2004年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。 这是数论领域一项惊人的成果!
有这一理论为基础,请你借助手中的计算机,满怀信心地搜索:
长度为 10 的等差素数列,其公差最小值是多少?
#include <iostream>
// #include<bits/stdc++.h>
using namespace std;
const int n=5e+4;
const int q=1e+3;
int f(int x){
for(int i=2;i<x;++i){
if(x%i==0)
return 0;
}
return 1;
}
int main()
{
// 请在此输入您的代码
int ans,num,d;
for(int i=2;i<n;++i)
if(f(i)){
for(int d=1;d<q;d++){
for(int j=1;j<q;j++){
num=i+d*(j-1);
if((f(num)))
ans++;
else
{
ans=1;
break;
}
if(ans==10){
cout<<d;
return 0;//注意return 0的位置
}
}
}
}
}
}
在蓝桥杯比赛中,重中之重是return 0;
算法可以没有输入,但是不可以没有输出哦
return 值 便是其main函数的输出,是必须有的哦
原创不易,希望大家点赞支持呀!!!