#278. 二进制回文数
二进制回文数
二进制回文数
题目描述
对于一个正整数 ,我们将其转换为不含前导零的二进制表示,如果这个二进制序列从左向右读与从右向左读完全相同,则称该数为二进制回文数。例如, 的二进制表示为 ,是二进制回文数; 的二进制表示为 ,不是二进制回文数。
你的任务是:给定一个正整数 ,计算在 到 的范围内二进制回文数的数量。
输入格式
输入一行,包含一个正整数 。
输出格式
输出一行,包含一个数,表示在 到 的范围内二进制回文数的数量。
样例输入
15
样例输出
6
样例解释
对于输入 ,我们需要找出 到 中所有的二进制回文数:
- 的二进制为 ,是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,不是回文;
- 的二进制为 ,是回文。
因此,共有 个二进制回文数,输出 。
数据范围