4257 - gcd

题目描述

Luke 是一名充满好奇心的数学探险家。他最近迷上了一种神秘的数字游戏,游戏规则很简单:在一片数字大陆上,Luke 需要找到特定的数字对。每次,他都要选择两个数字 ab,并且要求它们满足一些奇特的关系。

在这片数字大陆上,有一个强大的神秘力量,它就是“最大公约数”(gcd),以及一个神秘的运算符“异或”(xor)。Luke 的任务是找到一对 ab 满足 \operatorname{gcd}(a, b) = a \operatorname{xor} b

然而,这并不是那么简单!Luke 发现这对数字必须位于 [1, n] 之间,且他只能找出无序的数字对,也就是说 (a, b)(b, a) 是相同的。

现在,Luke 需要你的帮助,来找出在给定的数字范围内有多少对符合要求的数字对。快来帮助 Luke 一起解开这个谜题吧!

输入

输入共一行,一个整数 n

输出

输出一行一个整数,即答案。

样例

输入

3

输出

1

输入

588

输出

887

输入

1234567

输出

2153842
说明

【样例 1 解释】

\gcd(2,3)=2 \oplus 3=1

数据范围

对于30\%的数据,n \le 10^3

对于60\%的数据,n \le 10^5

对于100\%的数据,n \le 10^7

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 3 枚
难度 基础


上一题 下一题