Cod sursa(job #1443117)
Utilizator | Data | 26 mai 2015 23:35:29 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <cstdio>
#define L 2000001
using namespace std;
bool ciur[L];
int main()
{
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
int i, j, x, nr=0;
scanf("%d", &x);
for(i=3; i<=x; i+=2)
if(!ciur[i])
{
nr++;
for(j=i*i; j<=x; j+=(i<<1))
ciur[j]=1;
}
printf("%d\n", nr);
fclose(stdin);
fclose(stdout);
return 0;
}