Cod sursa(job #1416569)

Utilizator MailatMailat Radu Mailat Data 8 aprilie 2015 14:27:53
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>
#define MAX 2000000
using namespace std;

int prim[MAX];

void ciur(int n)
{
    for(int i = 1; i <= n; i++) prim[i] = 1;
    for(int i = 2; i <= n; i++)
    {
        if(prim[i]){
            for(int j = 2; i*j <= n; j++)
                prim[i*j] = 0;
        }
    }
}

int main()
{
    ifstream fin("ciur.in");
    ofstream fout("ciur.out");
    int n, cnt = 0;
    fin >> n;
    ciur(n);
    for(int i = 2; i < n; i++)
    {
        if(prim[i])
            cnt++;
    }
    fout << cnt << '\n';
    return 0;
}