Cod sursa(job #286976)

Utilizator lucaz0rLuca Liviu lucaz0r Data 24 martie 2009 13:07:06
Problema Ciurul lui Eratosthenes Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 0.43 kb
#include <stdio.h>
#include <stdlib.h>

#define Nmax 2000002

short a[Nmax];


int main()

{
 long n, i, j, nr;



 freopen ("ciur.in","r",stdin);
 freopen ("ciur.out","w",stdout);

 scanf ("%ld",&n);


 for (i=1;i<=n;i++) a[i]=0;

 for (i=2;i<=n;i++)
    if (a[i]==0)
        for (j=i+i;j<=n;j=j+i) a[j]=1;
 nr=0;
 for (i=2;i<=n;i++)
      if (a[i]==0) nr++;

 printf ("%ld",nr);

 return 0;

}