PAT刷題集(乙級)1007 素數對猜想 (20)(20 分)
阿新 • • 發佈:2019-01-01
1007 素數對猜想 (20)(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的滿足猜想的素數對的個數。
輸入格式:每個測試輸入包含1個測試用例,給出正整數N。
輸出格式:每個測試用例的輸出佔一行,不超過N的滿足猜想的素數對的個數。
輸入樣例:
20
輸出樣例:
4
提交完全通過的程式碼:
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n,t=0,a[10000],s=0,count=0,i,j;
cin>>n;
for(i=2;i<=n;i++)
{
for(j=2;j<=sqrt(i);j++)
{
if(i%j==0)
{
t=1;
break;
}
}
if (t==0)
{
a[s]=i;
s++;
}
t=0;
}
for(i=1;i<s;i++)
{
if((a[i]-a[i-1])==2)
count++;
}
cout<<count;
return 0;
}