Cod sursa(job #964827)

Utilizator RoxanaIstrateIstrate Roxana RoxanaIstrate Data 22 iunie 2013 13:58:23
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
#include <string.h>
#include <iostream>
#include <cstdlib>
#include <stack>
#include <math.h>
using namespace std;
void init_mirr(int nums[], int number){
	
	int i;
	nums[0] = nums[1] = -10;
	for(i = 2; i <= number; i++){
		nums[i] = 0;
	}
}
int main(){
	
	ifstream fin("ciur.in");
	ofstream fout("ciur.out");
	int number, i, j, sum = 0;
	fin>>number;
	int nums[2000009];
	init_mirr(nums, number);
	for(i = 2; i <= number; i++){
		if(nums[i] == 0){
			sum++;
			for(j = 2*i; j <= number; j+=i){
				nums[j] = -1;
			}
		}
	}
	fout<<sum;
	return 0;
}