欧拉筛,50分#6-11RE求调
  • 板块P1835 素数密度
  • 楼主wyxrl
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/8/13 11:28
  • 上次更新2024/8/13 14:22:27
查看原帖
欧拉筛,50分#6-11RE求调
1266960
wyxrl楼主2024/8/13 11:28
#include<bits/stdc++.h>
using namespace std;
const int N=1e8+1;
bool isPrime[N];
int Prime[N],cnt;
void Init(int m){
	for(int i=2;i<=m;i++){
		isPrime[i]=true;
	}
}
void CheckPrime(int m){
	for(int i=2;i<=m;i++){
		if(isPrime[i]){
			Prime[++cnt]=i;
		}
		for(int j=1;Prime[j]<=m/i;j++){
			isPrime[Prime[j]*i]=false;
			if(i%Prime[j]==0){
				break;
			}
		}
	}
}
int main (){
	int n,m,sum=0;
	cin>>n>>m;
	Init(m);CheckPrime(m);
	for(int i=n;i<=m;i++){
		if(isPrime[i])	sum++;
	}
	cout<<sum;
}
2024/8/13 11:28
加载中...