Cod sursa(job #2040620)
Utilizator | Data | 16 octombrie 2017 01:20:32 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <stdio.h>
#include <stdlib.h>
#define MAXINT 2000001
_Bool v[MAXINT];
int i, n,j,ans;
int main()
{
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
scanf("%d", &n);
for (i = 3; i <= n; i += 2)
if(v[i] == 0){
ans++;
for (j = i + i ; j <= n; j += i)
v[j] = 1;
}
if(n >= 2) ans++;
printf("%d\n",ans);
return 0;
}