Cod sursa(job #633553)

Utilizator the_snyper06FMI - ALexandru Mihai the_snyper06 Data 13 noiembrie 2011 23:56:42
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include<cstdio>
#include<bitset>

using namespace std;
int n, m;
bitset <2000001> bits;

int main() {
	int i;
	
	freopen("ciur.in", "r", stdin), freopen("ciur.out", "w", stdout);
	scanf("%d", &n);
	
	bits.set(), bits.set(0, 0), bits.set(1, 0);
	for(i = 2; i <= n; i++)
		if(bits.test(i)) {
			m++;
			int k = 2;
			while(i * k <= n) {
				bits.set(i * k, 0);
				k++;
			}
			
		}
		
	printf("%d\n", m);
	
	return 0;
}