Cod sursa(job #221359)
Utilizator | Data | 16 noiembrie 2008 11:18:01 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include<stdio.h>
#include<string.h>
FILE*fin=fopen("ciur.in","r");
FILE*fout=fopen("ciur.out","w");
int n,nrp=0;
char p[2000001];
int main()
{
int i,j;
fscanf(fin,"%d",&n);
fclose(fin);
memset(p,0,sizeof(p));
for(i=2;i<=n;i++)
if(!p[i])
{
nrp++;
for(j=i+i;j<=n;j+=i)
p[j]=1;
}
fprintf(fout,"%d",nrp);
fclose(fout);
return 0;
}