Cod sursa(job #444911)

Utilizator wamfeverDobos Ionut wamfever Data 22 aprilie 2010 07:27:46
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
using namespace std;

ifstream fin("ciur.in");
ofstream fout("ciur.out");

int i, j, n, num;
int p[2000001];

void sterge(int i)
{
     for(j=2*i; j<=n; j+=i) p[j]=0;
}

int main()
{
    fin>>n; num=0;
    fin.close();
    for(i=3; i<=n; i+=2) p[i]=1;
    p[2]=1;
    
    for(i=1;i<=n;i++)
    {
                     if(p[i])
                     {
                             num++;
                             sterge(i);
                     }
    }
    
    fout<<num;
    fout.close();
    return 0;
}