什么是质数?
质数是指在大于1的自然胡中,除了1和它本身以外不再有其他因数的自然数。、
一、朴素筛法
时间复杂度:
优化前:O()
优化后:O()
优化前代码
//题目:输入正整数n,输出n以内的所有质数(不包括1与n自身),空格隔开。
#include <iostream>
#include <cstdio>
#define ll long long
using namespace std;
bool zs(int x)
{
if(x == 1) //众所周知,1不是质数
return false;
for(int i = 2; i < x; i++)
{
if(x % i == 0) //判断i是否是x的因数
return false;
}
return true;
}
int main()
{
int n;
scanf("%d", &n);
for(int i = 2; i < n; i++)
{
if(zs(i)) //判断i是否为质数
printf("%d ", i); //是质数,则输出i
}
return 0;
}
优化后代码
//题目:输入正整数n,输出n以内的所有质数(不

最低0.47元/天 解锁文章
978





