PAT乙級練習題B1007 素數對猜想

2021-07-13 16:51:36 字數 826 閱讀 4348

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

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

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

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

輸入樣例:

20 輸出樣例:

4輸入n;

找出所有不大於n的素數,存入vector;

-判斷乙個數是否為素數,即只能被1和本身整除;

在vector裡遍歷找出所有相差為2的素數對;

這裡要注意素數判斷程式的速度,迴圈到sqrt(n)即可;

#include

#include

#include

using

namespace

std;

bool is_prime(int val)

if (val % 2 == 0)

for (int i = 3; i <= sqrt(val); i+=2)

}return1;}

int main()

}if (primes.empty())

for (auto it = primes.begin(); it != (primes.end()-1); ++it)

}cout

<< cnt << endl;

system("pause");

return

0;}

PAT 乙級練習題 1007

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

PAT乙級B1007 素數對猜想 20

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

B1007 素數對猜想

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