Cod sursa(job #2573089)

Utilizator NashikAndrei Feodorov Nashik Data 5 martie 2020 15:46:53
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
//#include <iostream>
#include <fstream>
#include <bitset>
using namespace std;
ifstream cin("ciur.in");
ofstream cout("ciur.out");
int prime[2000000],cnt=0;
bitset<2000005> sieve;
int main()
{
    int n;
    cin>>n;
    for(int i=4;i<=n;i+=2)
        sieve[i]=1;
    prime[++cnt]=2;
    for(long long i=3;i<=n;i+=2){
        if(sieve[i]==0){
            prime[++cnt]=i;
            for(long long j=i*i;j<=n;j+=i){
                sieve[j]=1;
            }
        }
    }
    cout<<cnt;
    return 0;
}