1 #include<cstdio> 2 #include<algorithm> 3 #include<cmath> 4 using namespace std; 5 int judge(int n){ 6 int k = (int)sqrt(1.0*n); 7 if(n<=1) 8 return 0; 9 for(int i = 2;i<=k;i++){ 10 if(n%i==0) 11 return 0; 12 } 13 return 1; 14 } 15 int main(){ 16 int n; 17 scanf("%d",&n); 18 int count = 0; 19 for(int i = 3;i<=n;i+=2){ 20 if(judge(i)==1&&judge(i-2)==1) 21 count++; 22 } 23 printf("%d",count); 24 return 0; 25 }
思路清晰,一个素数的判断函数,再对输入的范围值内的素数对进行循环计数即可。
原文:https://www.cnblogs.com/ZJU-LOSER/p/13339063.html