using namespace std;
typedef long long ll;
const int maxn = 100000+10;
int sum[maxn];
int check1(int n)
{
int cnt=0;
while(n)
{
cnt+=n%10;
n/=10;
}
return cnt;
}
int check2(int n)
{
int cnt=0;
while(n)
{
cnt+=n%2;
n/=2;
}
return cnt;
}
void work()
{
sum[0]=0;
for(int i=1;i<=100000;i++)
{
sum[i]=sum[i-1];
if(check1(i)==check2(i))
sum[i]++;
}
}
int main(void)
{
int n;
work();
while(scanf("%d",&n)!=EOF)
printf("%d\n",sum[n]);
return 0;
}