题目链接:点击打开链接
知识点笔记:
AC代码:
#include <cstdio>
using namespace std;
int n;
const int maxn=100010;
int prime[maxn],pNum=0;
bool p[maxn]={false};
void find_prime(int n){
for(int i=2;i<=n;i++){ //是小于等于,题目说的是不超过n
if(p[i]==false){
prime[pNum++]=i;
for(int j=i+i;j<=n;j+=i){
p[j]=true;
}
}
}
}
int main() {
scanf("%d",&n);
find_prime(n);
int count=0;
for(int i=0;i<pNum;i++){
if(prime[i+1]-prime[i]==2)
count++;
}
printf("%d\n",count);
return 0;
}