Cod sursa(job #210233)
Utilizator | ion anderi ionandrei | Data | 26 septembrie 2008 22:57:30 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include<stdio.h>
#define NMAX 2000000
int main()
{
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
long i,n,nrp=0,p,d,j,x,y;
char c[NMAX+1]={0};
scanf("%ld",&n);
for(i=2;i*i<=n;i++)
if(c[i]==0)
{
for(j=i;i*j<=n;j++)
c[i*j]=1;
}
for(i=2;i<=n;i++)
if(c[i]==0) nrp++;
printf("%ld",nrp);
return 0;
}