#include <iostream>

using namespace std;

int vtoad(int);

int main(void){
	char	*val;
	int	c,N,ad;

	while(cin >> N){
		c=2;
		if(N==1||N==2)
			c=N-1;
		else{
			val = new char[N/3+2];
			for(int i=0;i<N/3+2;i++)
				val[i]=0;

			for(int i=1;i*6-1<=N;i++)
				for(int j=-1;j<=1;j+=2)
					if(i*6+j<=N&&(ad=vtoad(i*6+j)))
						if(!val[ad]){
							c++;
							for(int k=2;(i*6+j)*k<=N;k++)
								if(ad=vtoad((i*6+j)*k))
									val[ad]=1;
					}
			delete [] val;
		}
		cout << c << endl;
	}

	return 0;
}

int vtoad(int val){
	if(!((val+1)%6))
		return (val+1)/3-1;
	else if(!((val-1)%6))
		return (val-1)/3+2;
	else
		return 0;
}