Cod sursa(job #679268)

Utilizator cpblncCristian Grajdeanu cpblnc Data 12 februarie 2012 22:53:10
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <iostream>
#include <fstream>

using namespace std;

int ciur(int n) {
	if( n < 2)
		return 0;
		
	char ints[n+1];
	ints[0] = 1; ints[1] = 1;	
	for(int i = 2; i <= n; i++){
		ints[i] = 0;
	}
	
	int count = 0;
	for(int i = 2;	i <= n; i++){
		if(ints[i] == 0) {
			count++;
			for(int j = i; j <= n; j+=i){
				ints[j] = 1;
			}
		}
	}
	return count;
}

int main(int argc, char** argv){

ifstream in;
ofstream out;
in.open("ciur.in");
out.open("ciur.out");

int n;
in >> n;
n = ciur(n);
out << n;

in.close();
out.close();

}