Cod sursa(job #2542643)
Utilizator | Cosofret Octavian-Stefan Octav02 | Data | 10 februarie 2020 13:12:58 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 90 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <fstream>
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
int n, counter;
bool fr[2000000];
int main()
{
fr[0] = true;
fr[1] = true;
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] = true;
}
}
for (int i = 2; i <= n; i++) {
if (!fr[i])
counter ++;
}
fout << counter;
return 0;
}