题目 20273

二进制翻转

查看题解 ↗GitHub ↗如何评测
题号
20273
标签
比赛NOIP
来源
2023 杜瑜皓 CSP-S&NOIP20连测 第 13 套

二进制翻转

题目描述 定义函数 𝑅𝑅𝑅𝑅𝑅𝑅(𝑥𝑥) 表示把 𝑥𝑥 在二进制表示下翻转后的值。

例如:

𝑅𝑅𝑅𝑅𝑅𝑅(4) = 1,因为 4 等于(100)2 ,翻转后是 (001)2 ,也就是 1。

𝑅𝑅𝑅𝑅𝑅𝑅(6) = 3,因为 6 等于(110)2 ,翻转后是 (011)2 ,也就是 3。

定义 𝐶𝐶𝐶𝐶𝐶𝐶(𝑥𝑥) 表示 𝑥𝑥 在二进制表示下 1 的个数,求: ∑𝑛𝑛𝑖𝑖=0 𝐶𝐶 𝑛𝑛𝑛𝑛(𝑅𝑅𝑅𝑅𝑅𝑅(𝑖𝑖) + 𝑖𝑖)

输入格式 一行,一个整数𝑛𝑛。

输出格式 输出一个数,表示答案。

样例输入 1 123

样例输出 1 460

样例输入 2 9169749547

样例输出 2 154039533804

数据规模 共 10 个测试点。

测试点1,2满足𝑛𝑛 ≤ 105 。

测试点3,4满足𝑛𝑛 ≤ 107 。

测试点5,6,7满足𝑛𝑛 ≤ 1010 。

对于所有数据,满足0 ≤ 𝑛𝑛 ≤ 1015 。

数据下载

题目 20273 的公开数据

正在读取文件列表…

常用命令

题目 20273 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。