Cod sursa(job #1481355)

Utilizator CiobaCatalinCioba Catalin CiobaCatalin Data 4 septembrie 2015 11:45:30
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <iostream>
#include <cstdio>
#include <cstdlib>

using namespace std;

const int maxn = 2 * 1e6 + 5;

bool check[maxn];
int cnt;

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

    int n; scanf("%d", &n);

    cnt = 1;
    for (int i = 3; i <= n; i += 2) {
        if (!check[i])
            cnt++;

        for (int j = 3*i; j <= n; j += 2*i)
            check[j] = 1;
    }

    printf("%d", cnt);

    return 0;
}