PAT-1007 素數對猜想
阿新 • • 發佈:2018-12-13
1007 素數對猜想 (20 分)
讓我們定義dn為:dn=pn+1−pn,其中pi是第i個素數。顯然有d1=1,且對於n>1有dn是偶數。“素數對猜想”認為“存在無窮多對相鄰且差為2的素數”。
現給定任意正整數N
(<105),請計算不超過N
的滿足猜想的素數對的個數。
輸入格式:
輸入在一行給出正整數N
。
輸出格式:
在一行中輸出不超過N
的滿足猜想的素數對的個數。
輸入樣例:
20
輸出樣例:
4
#include<iostream> #include<vector> using namespace std; bool cmp(int m)//判斷是否為素數 { int x=0; for(int i=2;i<m;i++) { if(m%i==0) { x++; break; } } if(x==0) { return true; } else { return false; } } int main() { int n; cin>>n; vector<int>s;//素數向量s s.push_back(2);//第一個素數為2 if(n<=2) { cout<<0; return 0; } for(int i=3;i<=n;i++) { if(cmp(i)) { s.push_back(i); } } int l=s.size(),d=0; for(int i=0;i<l;i++) { if((s[i+1]-s[i])==2) { d++; } } cout<<d; return 0; }
18分。。。