玄学问题
查看原帖
玄学问题
344163
㌠㌲㌳㌱㌴㌶楼主2020/11/2 22:22

这是一个朴实无华的埃筛

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
const int n=10000010;
bool a[10000010];
void assf()
{
	int k=sqrt(n);
	a[0]=a[1]=1;
	for(int i=2;i<=k;i++)
	{for(int j=2;j<=n/i;j++)
	 if(a[i*j]==0) a[i*j]=1;
	}
	
}
int main()
{
	//freopen("sushu.out","w",stdout);
	int s,ans=0;
	cin>>s;
    assf();
	for(int i=0;i<=s;i++)
	if (a[i]==0)
	{
	    cout<<i<<" "; 
	    ans++;
	    }
	cout<<ans;
}

但是用文件输入输出后结果用.txt或写字板打开会成乱码,用别的就不会,在学校用cena会报错,不知在csp会不会有影响

2020/11/2 22:22
加载中...