检测到 KaTeX 加载失败,可能会导致文中的数学公式无法正常渲染。
本题有以下几种解法:
- 莫比乌斯反演(本文)
- 欧拉反演
#题面
#题目描述
作为体育委员,C 君负责这次运动会仪仗队的训练。仪仗队是由学生组成的 的方阵,为了保证队伍在行进中整齐划一,C 君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图)。
现在,C 君希望你告诉他队伍整齐时能看到的学生人数。
#输入格式
一行,一个正整数 。
#输出格式
输出一行一个数,即 C 君应看到的学生人数。
#输入输出样例
输入 #1
4
输出 #1
9
#数据范围与说明
对于 的数据,。
#思路
设 C 君的坐标为原点建立一个平面直角坐标系。
容易发现相同的斜率只能有一个,否则会被挡住,可以推出当一个点的横坐标与纵坐标的最大公约数大于 1 时就会被遮挡。
所以问题就被转化成了找所有满足 的整数对,使用莫比乌斯反演即可解决。
推导过程:
设 为 为 的整数对个数, 表示 的整数对个数
可得 。
反演得 。
容易发现 。
整理得 。
最后求 即为答案。
最后还需要加上 和 两个点。
还需要特判当 时的情况,因为此时仪仗队内仅有 C 君一人。
#代码
1 |
|