Cod sursa(job #2640583)
Utilizator | Chirica Robert robeert.77 | Data | 6 august 2020 22:44:27 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 70 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include <fstream>
#include <cmath>
using namespace std;
ifstream fin ("ciur.in");
ofstream fout ("ciur.out");
int main() {
fin.tie(0);
ios::sync_with_stdio(0);
int n;
fin >> n;
bool isNotPrime[n + 1] = {false};
int margin = sqrt(n);
for (int i = 2; i <= margin; i++)
for (int j = 2; i * j <= n; j++)
isNotPrime[i * j] = true;
int nr = 0;
for (int i = 2; i <= n; i++)
if (!isNotPrime[i])
nr++;
fout << nr;
return 0;
}