B. gcd & xor (gcd)

    传统题 文件IO:gcd 1000ms 256MiB

gcd & xor (gcd)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

给定一个正整数 nn,在 [1,n][1, n] 的范围内,求出有多少个无序数对 (a,b)(a, b) 满足

gcd(a,b)=ab,\gcd(a, b) = a \oplus b,

其中 gcd(a,b)\gcd(a, b) 表示 aabb 的最大公约数,\oplus 表示按位异或运算。

输入格式

在文件 gcd.in 中读入。

输入一个正整数 nn

输出格式

在文件 gcd.out 中输出。

输出一个整数,表示满足条件的无序数对的数量。

样例

样例输入 #1

7

样例输出 #1

4

样例 1 解释

满足条件的无序数对有:

  • (2,3)(2, 3)
  • (4,5)(4, 5)
  • (4,6)(4, 6)
  • (6,7)(6, 7)

样例输入 #2

114514

样例输出 #2

198982

样例输入 #3

1919810

样例输出 #3

3349879

大样例

数据范围

  • 对于前 30%30\% 的数据,n1000n \le 1000
  • 对于前 60%60\% 的数据,n105n \le 10^5
  • 对于所有数据,1n1071 \le n \le 10^7

小云雀杯提高组重现

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-9-8 23:15
结束于
2026-9-14 14:15
持续时间
135 小时
主持人
参赛人数
24