蒟蒻欧拉筛求助
  • 板块学术版
  • 楼主ckun
  • 当前回复4
  • 已保存回复4
  • 发布时间2020/8/21 11:53
  • 上次更新2023/11/6 19:46:52
查看原帖
蒟蒻欧拉筛求助
254317
ckun楼主2020/8/21 11:53
#include<bits/stdc++.h>
using namespace std;

const long long maxn=100000;
bool judge[maxn];
int prime[maxn],cnt=0;

void sieve(int x){
	 memset(judge,1,sizeof(judge));
	 memset(prime,0,sizeof(prime));
	 judge[0]=judge[1]=0;
	 for(int i=2;i<=x;i++){
	 	if(judge[i]==1){
	 		prime[cnt++]=i;
	 		for(int j=0;j<cnt&&i*prime[j]<=x;j++){
	 			judge[i*prime[j]]=0;
	 			if(i%prime[j]==0)
	 				break;
			 }
		}
	 }
	 return;
}

int main(){
	int a,b,t=0;
	cin>>b;
	sieve(b);
	for(int i=0;i<cnt;i++)
		cout<<prime[i]<<" ";
	return 0;
}

找不出问题,萌新求助大佬

2020/8/21 11:53
加载中...