Cod sursa(job #2040612)
Utilizator | Data | 16 octombrie 2017 01:14:43 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <stdio.h>
#include <stdlib.h>
#define MAXINT 1000001
int v[MAXINT], i, n,j,ans;
int main()
{
scanf("%d", &n);
for (i = 3; i <= sqrt(n); i += 2)
for (j = i * 3 ; j <= n; j += i<<1)
v[j] = 1;
for (i = 3; i <= n; i += 2)
if (v[i] == 0)
ans++;
if(n >= 2) ans++;
printf("%d\n",ans);
return 0;
}