引入
题目背景
给定正整数 n n n,请求出 1 , 2 , ⋯ , n 1,2,\cdots,n 1,2,⋯,n间所有质数
输入格式
一个正整数 n n n。
输出格式
一行多个正整数,表示 1 , 2 , ⋯ , n 1,2,\cdots,n 1,2,⋯,n中所有质数。
样例
样例 #1
样例输入 #1
3
样例输出 #1
2 3
数据范围
- 对于 100 % 100 \% 100% 的数据, 1 ≤ n ≤ 1 0 6 1\leq n\leq10^6 1≤n≤106
暴力解决
遇事不决先暴力——洛谷大犇
最基础的思想就是枚举一遍 1 , 2 , ⋯ , n 1,2,\cdots,n 1,2,⋯,n,遇到质数就输出。
实现代码:
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 1;
int n;
bool isprime(int x)
{
if (x == 1) return 0;
int i = 2;
while (i < x) {
if (x % i == 0) return 0;
++i;
}
return 1;
}
int main()<