Cod sursa(job #801741)

Utilizator Paula-ElenaPaula-Elena Margarit Paula-Elena Data 24 octombrie 2012 21:23:26
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<fstream>
#include<math.h>
#include<malloc.h>
using namespace std;

#define NMAX 2000003
double n, aux;
int a[NMAX], i, j;

int main(){
	
	ifstream fin("ciur.in");
	ofstream fout("ciur.out");

	fin >> n;
	aux = floor(sqrt(n));
	
	for(i=2; i<=aux; i++){
		if(a[i] == 0){
			for(j=i*i; j<=n; j= j+i) a[j] = 1;
		}
	}
	j=0;
	for(i=2; i<=n; i++) {
		if(a[i] == 0) j++;
	}

	fout << j;
	
	fin.close();
	fout.close();
	
	return 0;
}