1007 素數對猜想 20

2021-08-15 00:25:14 字數 796 閱讀 9222

讓我們定義 dn 為:dn = pn+1 - pn,其中 pi 是第i個素數。顯然有 d1=1 且對於n>1有 dn 是偶數。「素數對猜想」認為「存在無窮多對相鄰且差為2的素數」。

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

輸入格式:每個測試輸入包含1個測試用例,給出正整數n。

輸出格式:每個測試用例的輸出佔一行,不超過n的滿足猜想的素數對的個數。

輸入樣例:

20
輸出樣例:

4備註:如何判斷n是不是素數?

計算n是否可以整除x,x∈[2,n-1]。

-> 可以縮小x範圍加快速度,x∈[2,根號(n)]。

-> 範圍內不需要每個數檢查是否整除,只需要檢查範圍內的素數,

例如在區間[2,10],只需要檢查2/3/5/7四個素數是否能被整除,4/6/8/9合數可以跳過(因為可以整除2必然可以整除4/6/8)。

#include int isprime(int, int*, int);

int main()

}// printf("\n");

for(i=1; prime[i]<=n; i++) /*計算素數對*/ }

printf("%d", cnt);

return 0;

}/*判斷素數,如果是則返回1,不是返回0*/

int isprime(int x, int *p, int len)

{ int flag = 1;

int i;

for(i=0; i

1007 素數對猜想 20

1007.素數對猜想 20 讓我們定義 dn 為 dn pn 1 pn,其中 pi 是第i個素數。顯然有 d1 1 且對於n 1有 dn 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現給定任意正整數n 105 請計算不超過n的滿足猜想的素數對的個數。輸入格式 每個測試輸入包含1個測試用...

1007 素數對猜想 20

讓我們定義 dn 為 dn pn 1 pn,其中pi 是第i個素數 顯然有 d1 1 且對於n 1有 dn 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現給定任意正整數n 105 請計算不超過n的滿足猜想的素數對的個數。輸入格式 每個測試輸入包含1個測試用例,給出正整數n。輸出格式 每...

1007 素數對猜想 20

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 讓我們定義 dn 為 dn pn 1 pn,其中 pi 是第i個素數。顯然有 d1 1 且對於n 1有 dn 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現...