Cod sursa(job #1772051)

Utilizator SmarandaMaria Pandele Smaranda Data 6 octombrie 2016 14:35:25
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
//#include <iostream>
#include <bitset>
#include <cmath>

using namespace std;

ifstream cin ("ciur.in");
ofstream cout ("ciur.out");

bitset <2000010> ciur;

int main() {
	int n, i, j, num;
	
	cin >> n;
	for (i = 4; i <= n; i = i + 2)
		ciur.set(i, 1);
	for (i = 3; i * i <= n; i++)
		if (ciur[i] == 0)
			for (j = i * i; j <= n; j = j + i)
				ciur.set(j, 1);
	num = 1;
	for (i = 3; i <= n; i++)
		if (ciur[i] == 0) {
		    num++;
		}
	cout << num;
	cin >> n;
	return 0;
}