Cod sursa(job #622100)

Utilizator Sanduleac_VladSanduleac Vllad Alexandru Sanduleac_Vlad Data 17 octombrie 2011 14:06:50
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <vector>
#include <stdio.h>
using namespace std;

int main() {
	long N, nr = 0, i, j;
	freopen("ciur.in", "r", stdin);
	freopen("ciur.out", "w", stdout);
	scanf("%ld", &N);
	vector<bool> c(2000001, true);
	for(i = 2; i * i <= N; i++) {
		if(c[i])//i prim
			for(j = i * i; j <= N; j += i)//marchez multiplii sai
				c[j] = false;
	}
	for(i = 2; i <= N; i++)
		if(c[i])
			nr++;
	printf("%ld", nr);
	return 0;
}