第19737题
计算1到n范围内的二进制回文数的数量

题目描述

对于正整数n,将其转换为不含前导零的二进制表示,若该二进制序列正读和反读完全相同,则称为二进制回文数。例如:9的二进制为1001,是二进制回文数;12的二进制为1100,不是二进制回文数。 要求:给定正整数n,计算1到n范围内二进制回文数的数量。

输入格式

输入一行,包含一个正整数n。

输出格式

输出一行,包含一个整数,表示1到n范围内二进制回文数的数量。

样例

输入样例

15

输出样例

6

样例解释

1到15范围内的二进制回文数为:1、3、5、7、9、15,共6个。

数据范围

$1 \leq n \leq 10^5$