Cod sursa(job #1565236)
| Utilizator | Data | 10 ianuarie 2016 15:51:50 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.45 kb |
#include <fstream>
using namespace std;
const int MAX_N = 2000000;
bool V[1 + MAX_N];
ifstream in("ciur.in");
ofstream out("ciur.out");
int main() {
int n, i, ans = 0;
long long j;
in >> n;
for(i = 3; i <= n; i += 2) {
for(j = 1LL * i*i; j <= n; j += i) {
V[j] = 1;
}
}
for(i = 3; i <= n; i += 2) {
ans += (1 - V[i]);
}
out << ans + 1 << '\n';
return 0;
}
