Cod sursa(job #775595)
| Utilizator | Data | 8 august 2012 16:02:09 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include <stdio.h>
const int v_LIMIT = 2000001;
bool v[v_LIMIT];
int c = 0, n;
int main()
{
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
scanf("%d", &n);
for(size_t i = 2; i * i <= n; i++)
if(v[i] == false)
for(size_t k = i * i; k <= n; k += i)
v[k] = true;
for(size_t i = 2; i <= n; i++)
if(!v[i])
c++;
printf("%d", c);
return 0;
}
