Cod sursa(job #2174510)

Utilizator kewonCosmin Sava kewon Data 16 martie 2018 12:21:40
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <bits/stdc++.h>

using namespace std;

int n;

bitset <2000003> a;

ifstream f("ciur.in");
ofstream g("ciur.out");

void Ciur()
{

    int i, j, s;

    a[1] = 1;
    a[0] = 1;

    for(i = 4; i <= n; i += 2)
        a[i] = 1;

    for(i = 3; i*i <= n; i += 2)
        if (a[i] == 0)
            for (j = i*i; j <= n; j += (2*i))
                a[j] = 1;

    s = 1;
    for (i = 3; i <= n; i += 2)
        if(a[i] == 0 )s++;

    g << s;
}

int main()
{
    f >> n;

    Ciur();
    return 0;
}