2378: 二进制回文串

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:24 Solved:18

Description

对于一个正整数n,我们将其转换为不含前导零的二进制表示,如果这个二进制序列从左向右读与从右向左读完全相同,则称该数为二进制回文数。例如,9的二进制表示为(1001)2,是二进制回文数;12的二进制表示为(1100)2,不是二进制回文数。

你的任务是:给定一个正整数n,计算在1到n的范围内二进制回文数的数量。

Input

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

Output

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

Sample Input Copy

15

Sample Output Copy

6

HINT

【数据范围】

1≤n≤100000。

【样例说明】

样例1中,1到15范围内1、3、5、7、9、15是二进制回文数。

Source/Category