Cod sursa(job #1470147)

Utilizator dorumusuroiFMI - Doru Musuroi dorumusuroi Data 10 august 2015 14:30:01
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>
using namespace std;
const char iname[] = "ciur.in";
const char oname[] = "ciur.out";

int hit[2000005], N;

int solve()
{
    int cnt = 0;
    for(int i = 2; i <= N/2; i++)
        if(!hit[i])
    {
        cnt++;
        int aux = i+i;
        while(aux<=N)hit[aux] = 1, aux+=i;
    }
    for(int i = N/2 +1; i<= N; i++)
        if(!hit[i]) cnt++;
    return cnt;
}

int main()
{
    ifstream in(iname);
    ofstream out(oname);
    in >> N;
    out << solve();
    return 0;
}