PAT乙級1013 數素數 20分

2021-10-07 04:00:04 字數 1020 閱讀 8220

令 p​i表示第 i 個素數。現任給兩個正整數 m≤n≤10​4,請輸出 p​m 到 pn 的所有素數。

輸入格式:

輸入在一行中給出 m 和 n,其間以空格分隔。

輸出格式:

輸出從 pm到 p​n的所有素數,每 10 個數字佔 1 行,其間以空格分隔,但行末不得有多餘空格。

輸入樣例:

5

27

輸出樣例:

11

1317

1923

2931

3741

4347

5359

6167

7173

7983

8997

101103

思路:一眼望去很簡單,而且似乎沒什麼坑,但,事實證明如果你不小心謹慎,你就進去了。題目上說的很清楚,是pi表示第幾個素數,按照現實生活中的說法,第幾個,我們都是從1開始的,第1個,第2個……恰巧,這個也是(你可以根據給出的例子得出,注意0和1都不是質數(素數!!))。然後找第pm個到第pn個素數,這就要求你能確定哪個是素數,然後直接根據下標直接輸出即可,所以我們可以從2(最小的素數)開始,依次找出第乙個素數2到第pn個素數,然後把他們儲存起來,保險起見,題中n最大是10000,下標從1,所以我們只需要10001個即可。注意行末不能有空格,每10個換行,就是對10取余為0。這個題的換行輸出之前自己不是這樣寫的,借鑑了別人的做法
#include

#include

intisprime

(int n)

;int

main()

} k=0;

for(i=m;i<=n;i++

)return0;

}int

isprime

(int n)

}return1;

}

PAT乙級 1013 數素數 20分

令 p ip i pi 表示第 i ii 個素數。現任給兩個正整數 m n 10 4 m n 10 4 m n 10 4,請輸出 p mp m pm 到 p n p n p n 的所有素數。輸入在一行中給出 m mm 和 n nn,其間以空格分隔。輸出從 p mp m pm 到 p np n pn ...

PAT 乙級 1013 數素數 20分

我的個人 部落格 blog blog 221 歡迎交換友鏈 令 pi 表示第 i 個素數。現任給兩個正整數 m n 104,請輸出 pm 到 pn 的所有素數。輸入格式 輸入在一行中給出 m 和 n,其間以空格分隔。輸出格式 輸出從 pm 到 pn 的所有素數,每 10 個數字佔 1 行,其間以空格...

PAT乙級 1013 數素數 20

原題鏈結 令pi表示第i個素數。現任給兩個正整數m n 104,請輸出pm到pn的所有素數。輸入格式 輸入在一行中給出m和n,其間以空格分隔。輸出格式 輸出從pm到pn的所有素數,每10個數字佔1行,其間以空格分隔,但行末不得有多餘空格。輸入樣例 5 27 輸出樣例 11 13 17 19 23 2...