素數距離問題(素數表)

2021-08-27 14:50:27 字數 676 閱讀 5503

時間限制:3000 ms  |  記憶體限制:65535 kb

難度:2

描述現在給出你一些數,要求你寫出乙個程式,輸出這些整數相鄰最近的素數,並輸出其相距長度。如果左右有等距離長度素數,則輸出左側的值及相應距離。

如果輸入的整數本身就是素數,則輸出該素數本身,距離輸出0

輸入

第一行給出測試資料組數n(0輸出

每行輸出兩個整數 a b.

其中a表示離相應測試資料最近的素數,b表示其間的距離。

樣例輸入

368

10

樣例輸出

5 1

7 111 1

思路:打素數表。注意細節。

ac:

#include#includeint p[1200000];

void makeprimer()

} return;

}int main()

for(int i=0;i<=1200000;i++)

if(!p[a+i])

}} return 0;

}

總結:

1.1不是質數也不是合數,數學基礎知識;

2.範圍是0到1000000,開的陣列要大點,當輸入99999的時候最接近的素數是1000003;

3.注意細節。

素數距離問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述 現在給出你一些數,要求你寫出乙個程式,輸出這些整數相鄰最近的素數,並輸出其相距長度。如果左右有等距離長度素數,則輸出左側的值及相應距離。如果輸入的整數本身就是素數,則輸出該素數本身,距離輸出0 輸入第一行給出測試資料組數n 0輸...

素數距離問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述 現在給出你一些數,要求你寫出乙個程式,輸出這些整數相鄰最近的素數,並輸出其相距長度。如果左右有等距離長度素數,則輸出左側的值及相應距離。如果輸入的整數本身就是素數,則輸出該素數本身,距離輸出0 輸入第一行給出測試資料組數n 0輸...

素數距離問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述 現在給出你一些數,要求你寫出乙個程式,輸出這些整數相鄰最近的素數,並輸出其相距長度。如果左右有等距離長度素數,則輸出左側的值及相應距離。如果輸入的整數本身就是素數,則輸出該素數本身,距離輸出0 輸入第一行給出測試資料組數n 0 ...