Cod sursa(job #1159104)

Utilizator theodor.moroianuTheodor Moroianu theodor.moroianu Data 29 martie 2014 12:35:05
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
//http://www.infoarena.ro/problema/ciur
#include <fstream>
using namespace std;

bool nr[2000001];
int n,j,k,i,r=0;
void ciur(int x);

int main(){
	ifstream in("ciur.in");
	ofstream out("ciur.out");
	in >> n;
	while (i < n){
		for (j = 2; j < n; j++){
			if (!nr[j]){
				i = j;
				r++;
				break;
			}
		}
		if (j == n)
			break;
		ciur(i);
	}
	out << r;
}

void ciur(int x){
	for (k = x; k <= n; k += x)
		nr[k] = true;
}