Cod sursa(job #2841065)

Utilizator ciobyCiobanu Vlasie cioby Data 29 ianuarie 2022 11:39:23
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
const string name = ("ciur");
ifstream fin(name + ".in");
ofstream fout(name + ".out");

vector <int> v;
bool ciur[2000005];
int n;


void Eratosthenes(int n)
{
	ciur[0] = ciur[1] = 1;
	for (int i = 4; i <= n; i += 2) ciur[i] = 1;
	for (int i = 3; i * i <= n; i += 2) {
		for (int j = i * i; j <= n; j += i)
			ciur[j] = 1;
	}
	for (int i = 2; i <= n; i++)
	{
		if (ciur[i] == 0) v.push_back(i);
	}
}

int main()
{
	fin >> n;
	Eratosthenes(n);
	fout << v.size();

}