Cod sursa(job #602883)
Utilizator | Data | 13 iulie 2011 16:57:45 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <cstdio>
char prim[2000005];
int n,max;
void ciur() {
int i,j;
for(i=2; i<=n; i++) prim[i]=1;
for(i=2; i*i<=n; i++)
if(prim[i]==1){
for(j=i*i; j<=n; j+=i) {
prim[j]=0;
}
}
for(int i=2; i<=n; ++i) if(prim[i]) ++max;
}
int main() {
FILE *f=fopen("ciur.in","r");
FILE *g=fopen("ciur.out","w");
fscanf(f,"%d",&n);
ciur();
fprintf(g,"%d",max);
fclose(f);
fclose(g);
return 0;
}