Cod sursa(job #2008053)

Utilizator justsomedudePalade Thomas-Emanuel justsomedude Data 5 august 2017 06:00:17
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include<fstream>
using namespace std;
ifstream fin ("ciur.in");
ofstream fout ("ciur.out");

bool a[2000003];
int N, cnt;

void Ciur()
{
   int i, j;
   fin >> N; 
  
   for (i=3; i*i<=N; i=i+2)
     if (a[i]==0)
      for (j=i*i; j<=N; j=j+i*2)        
        a[j] = 1;
}

void Numara()
{
   int i, j;

   if (N>2) cnt=1;
   else cnt=0;
   for (i=3; i<=N; i=i+2)
     if (a[i]==0) cnt++;
   fout << cnt << "\n";
}


int main ()
{
  Ciur();
  Numara();
  return 0;
}