#include<bits/stdc++.h>
using namespace std;
const int N = 1e6 + 10;
int n;
int prime[N];
bool st[N];
int cnt;
//埃式筛法
void ai_prime(int x){
for(int i = 2; i <= x; i++){
if(!st[i]) prime[++ cnt] = i;
for(int j = i + i; j <= x; j += i) st[j] = true;
}
}
//线性筛法
void xian_prime(int x){
for(int i = 2; i <= x; i++){
if(!st[i]) prime[cnt ++] = i;
for(int j = 0; prime[j] <= n / i; j++){
st[i * prime[j]] = 1;
if(i % prime[j] == 0) break;
}
}
}
int main(){
cin >> n;
xian_prime(n);
cout << cnt << "\n";
return 0;
}