1 solutions

  • 0
    @ 2025-7-19 9:30:14
    #include<bits/stdc++.h>
    using namespace std;
    #define m 5800000
    #define m1 100000000
    bool f[m1];
    int n,cnt=0,p[m];
    int main(){
        scanf("%d",&n);
        for(int i=2;i<=n;i++){
            if(!f[i]){
                p[++cnt]=i;
    		}
    		for(int j=1;j<=cnt;j++){
                if(i*p[j]>n)break;
    			f[i*p[j]]=1;
                if(!(i%p[j]))break;
    		}
        }
        printf("%d",cnt);
        return 0;
    }
    

    Information

    ID
    120
    Time
    1000ms
    Memory
    256MiB
    Difficulty
    2
    Tags
    # Submissions
    54
    Accepted
    5
    Uploaded By