Cod sursa(job #1526646)
Utilizator | Data | 16 noiembrie 2015 22:51:27 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include <cstdio>
#include <bitset>
using namespace std;
bitset <2000005> Q;
int main()
{
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
int n, i, j, s;
s = 0;
scanf("%d",&n);
for( i = 2; i <= n; ++i ){
if( !Q[i] ){
s++;
for( j = i; j <= n; j += i ) Q[j] = true;
}
}
printf("%d",s);
return 0;
}