Cod sursa(job #196647)

Utilizator StigmaSimina Pitur Stigma Data 27 iunie 2008 18:16:02
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.37 kb
#include <stdio.h>
int main()
{typedef enum {NU,DA} set;
 set a[2000001];
  long n,i,j,nr;
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);

scanf("%d",&n);

for (i=2; i<=n; i++) a[i]=DA;

for (i=2; i<=n/2; i++)
if (a[i]==DA)
 for (j=i+i; j<=n; j+=i)
   a[j]=NU;

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

printf("%d\n",nr);

return(0);

}