关于质数的两种题型
1.给你一个数判断该数是否是质数
编写bool is_prime()函数,边界小于等于sqrt(n);
2.给你一个数,判断从1到该数这段区间有多少个质数:
这种情况下数据范围一般都比较大,采取空间换区时间的方法,利用数组进行标记
标记时记住一个结论,所有合数都是由质数组成的,
可以把质数比喻成盖房子的砖块,不同大小的砖块
for(int i=2;i<=n;i++){
if(!arr[i]){
cnt++;
for(int j=i+i;j<=n;j+=i){
arr[j]=true;
}
}
}