#T557863. 有理数的个数(增强版)

有理数的个数(增强版)

题目描述

我们知道,任何有理数都可以表示成q/p的分数形式。当p和q的最大公约数不为1时,q/p还可以化简,化简成p和q为互质的自然数。如,9/12 = 3/4,因此9/12和3/4是同一个有理数。

限定分子q、分母p的范围为[1, n],我们想知道不同的有理数有多少个。

输入格式

输入数据占一行,为一个正整数n。

输出格式

输出占一行,为求得的答案。测试数据保证求得的答案不会超出long long型的范围。

输入输出样例 #1

输入 #1

2

输出 #1

3

输入输出样例 #2

输入 #2

10

输出 #2

63

说明/提示

样例1说明:

有3个不同的有理数:1/1, 1/2, 2/1。

数据规模与约定:

对于30%的数据,n≤1000。

对于50%的数据,n≤10000。

对于80%的数据,n≤1000000。

对于100%的数据,n≤10000000。

本题出处

本题源自以下教材的编程习题:王桂平, 周思益, 周迎川著. C++编程与信息学竞赛数学基础, 北京大学出版社, 2025年7月出版.