B.1007 素数对猜想 (20)

1007 素数对猜想 (20)(20 分)

让我们定义 d~n~ 为:d~n~ = p~n+1~ - p~n~,其中 p~i~ 是第i个素数。显然有 d~1~=1 且对于n&gt1有 d~n~ 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

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

输入格式:每个测试输入包含1个测试用例,给出正整数N。

输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。

输入样例:

20

输出样例:

4
#include<stdio.h>
#include<cmath>

bool isPrime(int n) {
    if (n <= 1) return false;
    int sqr = (int)sqrt(1.0 * n);
    for (int i = 2; i <= sqr; i++) {
        if (n % i == 0) return false;
    }
    return true;
}

int main() {
    int num, count = 0;
    scanf("%d", &num);
    for (int i = 3; i + 2 <= num; i += 2) {    //智障错误( i + 2 )  注意num前取"="
        if (isPrime(i) == true && isPrime(i + 2) == true) count++;
    }
    printf("%d\n", count);
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/Yaxadu/p/9164232.html
今日推荐