#6782. 趣味进制

趣味进制

题目描述

如果一个整数的二进制表示是连续若干个 11 后紧跟着连续若干个 00,我们将这类数称为 趣味二进制数

例如,十进制数 1212 的二进制表示为 110011001616 的二进制表示为 1000010000,它们都是趣味二进制数;但 77 的二进制表示只包含连续的 11、不含 00,因此不属于趣味二进制数。

求在十进制整数 1,2,,n1,2,\dots,n 中,一共有多少个趣味二进制数。

输入格式

输入一行,一个正整数 nn

输出格式

输出一行,一个整数,表示区间内趣味二进制数的数量。

样例 #1

样例输入

12

样例输出

5

样例解释

1121 \sim 12 中的趣味二进制数为:2,4,6,8,122,4,6,8,12

样例 #2

样例输入

16384

样例输出

92

数据范围

  • 对于 60%60\% 的数据:n100000n \le 100000
  • 对于 100%100\% 的数据:1n10000000001 \le n \le 1000000000

限制

  • 时间限制:1 s1\ \text{s}
  • 内存限制:128 MB128\ \text{MB}