1 #include <iostream>
2 #include <stdio.h>
3 #include <math.h>
4 #include <algorithm>
5 using namespace std;
6 // hdu 2136
7 /*
8 0 1 2 3 4 5 6 7 8 9 10 11
9 1 0 1 1 1 1 1
10 1 0 1 2 1 2 1 2 1
11 1 0 1 2 1 3 2 1 2 3
12 1 0 1 2 1 3 2 4 1 2 3
13 1 0 1 2 1 3 2 4 1 2 3
14 1 0 1 2 1 3 2 4 1 2 3 5
15
16 */
17 const int MAXN=1e6+10;
18 int prime[MAXN]={1}, pos=0;
19
20 void get_prime(){
21 for(int i=2; i<MAXN; i++){
22 if(!prime[i]){
23 pos++;
24 for(int j=1; i*j<MAXN; j++){
25 prime[i*j]=pos;
26 }
27 }
28 }
29 }
30
31 int main(){
32 get_prime();
33 int n;
34 while(~scanf("%d", &n)){
35 printf("%d\n", prime[n]);
36 }
37 return 0;
38 }