Cod sursa(job #1094277)

Utilizator Theodor1000Cristea Theodor Stefan Theodor1000 Data 29 ianuarie 2014 10:29:20
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <cstdio>

using namespace std;

int n;
bool prim[2000010];

int ciur ()
{
    int nr = 0;

    for (int i = 2; i <= n; i++)
        if (!prim[i])
        {
            nr++;

            for (int j = i * i; j <= n; j += i)
                if (j > 0) prim[j] = true;
                else break;
        }

    return nr;
}

int main ()
{
    freopen ("ciur.in", "r", stdin);
    freopen ("ciur.out", "w", stdout);

    scanf ("%d", &n);
    printf ("%d\n", ciur ());

    return 0;
}