Cod sursa(job #2483161)

Utilizator invoIlioi Alexandru invo Data 29 octombrie 2019 13:59:54
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.43 kb
#include<iostream>
#include<fstream>
#include<math.h>
#define MAX 2000005
using namespace std;

ifstream f("ciur.in");
ofstream g("ciur.out");

bool a[MAX];

int main()
{
	int n,c = 0;
	f >> n;
	for (int i = 2; i <= sqrt(n); ++i)
	{
		if (!a[i])
		{
			int j = i * i;
			while (j <= n)
			{
				a[j] = true;
				j += i;
			}
		}
	}
	for (int i = 2; i < n; ++i)
	{
		if (!a[i])
			c++;
	}
	g << c;
	return 0;
}