#CSES1146. 统计位数

    ID: 377 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>动态规划其他位运算数学数位DP二进制CSES进制转换

统计位数

题目背景

翻译自 CSES-1146 题。

题目描述

你的任务是计算从 11nn 之间的所有整数的二进制表示中 11 的个数。

输入格式

输入的唯一一行包含一个整数 nn

输出格式

输出从 11nn 之间所有整数的二进制表示中 11 的个数。

样例

7
12

提示

1177 的整数的二进制表示分别是:

  • 1=11 = 1
  • 2=102 = 10
  • 3=113 = 11
  • 4=1004 = 100
  • 5=1015 = 101
  • 6=1106 = 110
  • 7=1117 = 111

这些二进制表示中共有 121211,因此输出 1212

数据范围

  • 1n10151 \le n \le 10^{15}