Cod sursa(job #1488720)

Utilizator sucureiSucureiRobert sucurei Data 19 septembrie 2015 17:17:30
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include <fstream>
#define N 2000003

using namespace std;

ifstream cin ("ciur.in");
ofstream cout("ciur.out");

int a[N];

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

int main()
{
    int n,nr,i;
    cin>>n;
    ciur (n);
    nr=1;
    for (i=3;i<=n;i+=2)
        if (!a[i])
            nr++;
    cout<<nr;
    return 0;
}