-
题目

-
思路
- 先定义判断一个数是否素数的函数
is_prime,根据题意,在3~n的范围内,判断“相差为2的两个数是否都是素数”,符合条件则计数器加1
- 先定义判断一个数是否素数的函数
-
代码
#include <stdio.h> //判断某个数是不是素数 bool is_prime(int n){ if(n<=1) return false; for(int i=2;i*i<=n;i++){ if(n%i==0){ return false; } } return true; } int main(){ int n,cnt=0; scanf("%d",&n); //遍历,查找符合条件的数对 for(int i=3;i+2<=n;i+=2){ if(is_prime(i)&&is_prime(i+2)){ //相邻且差为2的素数 cnt++; } } printf("%d",cnt); }
PAT笔记:1007 素数对猜想 (20分)
最新推荐文章于 2022-01-08 13:02:48 发布
本文介绍了一种算法,用于计算在指定范围内相差为2的素数对的数量。通过定义素数判断函数is_prime,遍历给定区间,检查每一对相差为2的数是否都为素数,以此统计符合条件的素数对总数。
3058

被折叠的 条评论
为什么被折叠?



