Cod sursa(job #2542639)
Utilizator | Cosofret Octavian-Stefan Octav02 | Data | 10 februarie 2020 13:08:20 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 70 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include <fstream>
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
int n, fr[20000001], counter;
int main()
{
fr[0] = 1;
fr[1] = 1;
fin >> n;
for (int i = 2; i * i <= n; i++) {
if (fr[i] == 0) {
for (int j = i; j <= n / i; j++)
fr[i * j] = 1;
}
}
for (int i = 2; i <= n; i++) {
if (!fr[i])
counter ++;
}
fout << counter;
return 0;
}