Cod sursa(job #663851)
| Utilizator | Data | 19 ianuarie 2012 00:39:31 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
#include<fstream>
#define maxn 2000002
using namespace std;
long n, i, j;
long prim[maxn];
long ciur(long n)
{if(n<=1) return 0;
long nr=1;
for(i=3; i<=n; i+=2)
if(prim[i]==0)
{nr++;
for(j=i+i; j<=n; j+=i)
prim[j]=1;
}
return nr;
}
int main()
{freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
scanf("%d", &n);
printf("%d", ciur(n));
return 0;
}
