全部评论 1

  • 这道啊,我照着老师的代码抄的(注释没抄全):

    #include <bits/stdc++.h>
    using namespace std;
    bool p[1000002];//标记i+l是否为素数
    int main(){
    	long long n,m,cnt;
    	cin>>n>>m;
        if(n==1)n++;//1非素数
    	for(int i = 2;i<=100000;i++){//枚举i,删i的倍数
            long long low=(n-1)/i*i;
            low+=i;
    		if(low==i)low+=i;
            for(int j = low;j<=m;j+=i){
                p[j-n]=true;
            }
    	}
        for(long long i = n;i<=m;i++){
            if(!p[i-n])cnt++;
        }
    	cout<<cnt;
    	return 0;
    }
    

    2024-08-02 来自 广东

    0

热门讨论