Cod sursa(job #2869492)

Utilizator razvanalexrotaruRazvan Alexandru Rotaru razvanalexrotaru Data 11 martie 2022 16:05:34
Problema Ciurul lui Eratosthenes Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>
#define cin fin
#define cout fout
using namespace std;
ifstream cin ("ciur.in");
ofstream cout ("ciur.out");
int n,i,j,prim[2000008],cnt;
int main()
{
    cin>>n;
    if(n==1)
        cout<<"0";
    else
    {
        cnt=1;
        for(i=3; i<=n/i; i=i+2)
        {
            if(prim[i]==0)
            {
                cnt++;
                for(j=2*i; j<=n; j=j+i)
                    prim[j]=1;
            }
        }
        for(i;i<=n;i=i+2)
            if(prim[i]==0)
            cnt++;
        cout<<cnt;
    }
    return 0;
}