1181 質數中的質數(質數篩法)

2021-08-19 08:28:31 字數 996 閱讀 6440

1181 質數中的質數(質數篩法)

sgu基準時間限制:1 秒 空間限制:131072 kb 分值: 0 

難度:基礎題

如果乙個質數,在質數列表中的編號也是質數,那麼就稱之為質數中的質數。例如:3 5分別是排第2和第3的質數,所以他們是質數中的質數。現在給出乙個數n,求》=n的最小的質數中的質數是多少(可以考慮用質數篩法來做)。

input

輸入乙個數n(n <= 10^6)
output

輸出》=n的最小的質數中的質數。
input示例

20
output示例

31
**:(沒用指數篩法)

#include#includeusing namespace std;

int main()

{ int n;

cin>>n;

int num=0;

int flag;

for(int i=2;i拓展:指數篩法(與此題無關)

求100000以內質數

#include"cstdio"

#include"cstring"

using namespace std;

#define max 100000//求max範圍內的素數

long long su[max],cnt;

bool isprime[max];

void prime()

{ cnt=1;

memset(isprime,1,sizeof(isprime));//初始化認為所有數都為素數

isprime[0]=isprime[1]=0;//0和1不是素數

for(long long i=2;i<=max;i++)

{if(isprime[i])

su[cnt++]=i;//儲存素數i

for(long long j=1;j

51nod 1181 質數中的質數(質數篩法)

如果乙個質數,在質數列表中的編號也是質數,那麼就稱之為質數中的質數。例如 3 5分別是排第2和第3的質數,所以他們是質數中的質數。現在給出乙個數n,求 n的最小的質數中的質數是多少 可以考慮用質數篩法來做 input 輸入乙個數n n 10 6 output 輸出 n的最小的質數中的質數。input...

51nod 1181 質數中的質數(質數篩法)

如果乙個質數,在質數列表中的編號也是質數,那麼就稱之為質數中的質數。例如 3 5分別是排第2和第3的質數,所以他們是質數中的質數。現在給出乙個數n,求 n的最小的質數中的質數是多少 可以考慮用質數篩法來做 input 輸入乙個數n n 10 6 output 輸出 n的最小的質數中的質數。input...

51Nod 1181 質數中的質數(質數篩法)

我的想法蠻簡單。首先素數篩,剛學會,哈哈,然後,把素數都存起來。先判斷序列號是不是素數,在要求序列號對應的素數比n大,然後輸出。腦子有點蒙,最近確實有點累,我要睡啦。任務算是完成了。明天學一下乘法逆元,這個東西關係到好幾道題。必須要會呀。附上 include include include usin...