Pagini recente » Cod sursa (job #2698841) | Cod sursa (job #2423386) | Cod sursa (job #2182450) | Cod sursa (job #1944146) | Cod sursa (job #2725495)
#include <stdio.h>
#include <bits/stdc++.h>
#include <cstddef>
#define rep(i, n) for(int i = 0; i < (int)(n); i++)
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
// const int INF = 0x3f3f3f3f;
const int Nmax = 2'000'006;
ifstream fin {"ciur.in"};
ofstream fout {"ciur.out"};
char prime[Nmax];
int main(void) {
// freopen("ciur.in", "r", stdin);
std::ios_base::sync_with_stdio(false);
std::cin.tie(NULL);
int N;
fin >> N;
for(int i = 2; i <= N; i++) {
prime[i] = 1;
}
for(int p = 2; 1ll*p*p <= N; p++) {
if (!prime[p]) continue;
for(int q = p*p; q <= N; q += p) {
prime[q] = 0;
}
}
int ans = 0;
for(int i = 2; i <= N; i++) ans += prime[i];
fout << ans << '\n';
return 0;
}