nyoj 26 孿生素數問題 打表

2021-09-26 21:58:37 字數 1171 閱讀 4892

記憶體限制:64mb 時間限制:3000ms special judge: no

accepted:10 submit:43

寫乙個程式,找出給出素數範圍內的所有孿生素數的組數。一般來說,孿生素數就是指兩個素數距離為2,近的不能再近的相鄰素數。有些童鞋一看到題就開始寫程式,不仔細看題,咱們為了遏制一下讀題不認真仔細的童鞋,規定,兩個素數相鄰為1的也成為孿生素數。

第一行給出n(0每組測試資料輸出佔一行,該行為m範圍內所有孿生素陣列數。

複製

1

14

4

分析:

①、因為每次測試都有多組資料且都在1e6以內,考慮到資料量不是很大,所以我們可以先將每乙個點n的(0, n)區域中的孿生素數計算出來,放在乙個陣列中

②、當需要的時候,可以直接通過陣列的對應關係確定該點的孿生素數個數

③、說明:距離只差為1的素數其實只有一對(即就是2 、 3)

步驟:①、打表

②、通過表輸出孿生素數個數

核心**:

1

for(int i = 4; i < maxn; ++i)29

else

1013 }

c/c++**實現(ac):

1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 

8 #include 9 #include 10

11using

namespace

std;

12const

int maxn = 1e6 + 10;13

int a[maxn] = ;

1415

bool is_prime(int

n)16

2223

void

cal_excel()

2434

else

3538}39

return;40

}4142int

main ()

4353

return0;

54 }

nyoj26 孿生素數問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 寫乙個程式,找出給出素數範圍內的所有孿生素數的組數。一般來說,孿生素數就是指兩個素數距離為2,近的不能再近的相鄰素數。有些童鞋一看到題就開始寫程式,不仔細看題,咱們為了遏制一下讀題不認真仔細的童鞋,規定,兩個素數相鄰為1的也成為...

NYoj 26 孿生素數問題

孿生素數問題 時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 寫乙個程式,找出給出素數範圍內的所有孿生素數的組數。一般來說,孿生素數就是指兩個素數距離為2,近的不能再近的相鄰素數。有些童鞋一看到題就開始寫程式,不仔細看題,咱們為了遏制一下讀題不認真仔細的童鞋,規定,兩個素數相...

nyoj26 孿生素數問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 寫乙個程式,找出給出素數範圍內的所有孿生素數的組數。一般來說,孿生素數就是指兩個素數距離為2,近的不能再近的相鄰素數。有些童鞋一看到題就開始寫程式,不仔細看題,咱們為了遏制一下讀題不認真仔細的童鞋,規定,兩個素數相鄰為1的也成為...