Cod sursa(job #2266989)
| Utilizator | Data | 23 octombrie 2018 06:32:37 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.61 kb |
#include <iostream>
#include <fstream>
using namespace std;
/// Dandu-se un numar natural N, sa se determine numarul numerelor prime mai mici sau egale cu N.
ifstream fin("ciur.in");
ofstream fout("ciur.out");
int N, cnt, i, j, c[2000001], m;
int main()
{
cin >> N;
if (N == 1) {
cout << "0";
}
else {
cnt = 1;
for (i = 3; i < N; i += 2) {
if (!c[i]) {
for (j = i; j * i <= N; ++j) {
c[j * i] = 1;
}
++cnt;
}
}
cout << cnt;
}
return 0;
}
