Cod sursa(job #963325)
Utilizator | Daniel Sandy sandylau10 | Data | 17 iunie 2013 10:20:58 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include<cstdio>
#include<algorithm>
using namespace std;
bool v[2000002];
int i,j,x,n;
int main ()
{
freopen ("ciur.in","r",stdin);
freopen ("ciur.out","w",stdout);
scanf ("%d",&n);
v[1]=true;x=1;
for(i=3;i<=n;i+=2)
if(v[i]==false)
{
for(j=i;j<=n/i;++j) v[j]=true;
}
for (i=3;i<=n;i+=2) {if (v[i]==false) ++x;}
printf ("%d",x);
return 0;
}