PAT B1007題解


1007 素數對猜想 (20 分)
讓我們定義d
​n
​​ 爲:d
​n
​​ =p
​n+1
​​ −p
​n
​​ ,其中p
​i
​​ 是第i個素數。顯然有d
​1
​​ =1,且對於n>1有d
​n
​​ 是偶數。“素數對猜想”認爲“存在無窮多對相鄰且差爲2的素數”。

現給定任意正整數N(<10
​5
​​ ),請計算不超過N的滿足猜想的素數對的個數。

輸入格式:
輸入在一行給出正整數N。

輸出格式:
在一行中輸出不超過N的滿足猜想的素數對的個數。

輸入樣例:
20
輸出樣例:
4


#include<iostream>
#include<cmath>
using namespace std;
bool panduan(int n){
	if(n<=1)
		return false;
	int t=(int)sqrt(1.0 * n);
	for(int i=2;i<=t;i++){
		if(n%i==0){
			return false;
		}
	}
	return true;
}
int main(){
	int n,count=0;
	cin>>n;
	for(int i=3;i<=n-2;i+=2){
		if(panduan(i)==true && panduan(i+2)==true){
			count++;
		}
	}
	cout<<count;
	return 0;
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章