1007 素数对猜想

题目

让我们定义dn为:dn=pn+1−pn,其中pi是第i个素数。显然有d1=1,且对于n>1有dn是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

现给定任意正整数N(<105),请计算不超过N的满足猜想的素数对的个数。

输入格式
每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。

输出格式
每个测试用例的输出占一行,用规定的格式输出 n。
输入样例:

20

输出样例:

4

解析

  先将10^5以内的素数全部求出来放在数组中,然后遍历数组找到差为2的则数量+1

答案

#include 
#include 
#include 
#include 
using namespace std;
int a[10000];
bool isPrime(int b){
    for(int i=2;i<=sqrt(b);i++){
        if(b%i == 0){
            return false;
        }
    }
    return true;
}
int main(){
    int N;
    cin>>N;
    int k=0;
    for(int i=2;i<=N;i++){
        if(isPrime(i)){
            a[k++] = i;
        }
    }
    int num = 0;
    for(int i=1;i

你可能感兴趣的:(1007 素数对猜想)