以题目 “HDU - 2204 Eddy’s爱好” 为例

首先比较容易想到的是对于一个 [ 1 , n ] 这 n 个数,可以写成 a x 的一共有 n 1 x 个数字。
那么首先我们可以枚举 x ,就能完全不遗漏地考虑到所有满足情况的数字。但是,这之间一定会有数字重复考虑了,比如:如果一个数可以表示成 a 12 那么它就一定可以表示成 a 6 ;如果一个数可以表示成 a 6 ,那么它一定既可以表示成 a 2 也同样可以表示成 a 3

那么首先为了方便计数,我们把 x 表示成:

x = p 1 c 1 p 2 c 2 . . . p k c k
如果 c 1 , c 2 . . . c k 不都为1,那么我们直接不记录它的贡献了,因为它可以唯一确定的对应成 x = p 1 p 2 . . . p k ,即 c 1 , c 2 . . . c k 都为 1 的情况,它的贡献就看成 x 的贡献就完了。然后就是如果 x 只由若干质数相乘得到的情况了,设: x 1 = p 1 p 2 . . . p k g c d ( x 1 , x 2 ) x 2 = q 1 q 2 . . . q k g c d ( x 1 , x 2 ) 那么 x 1 x 2 贡献重复的部分即为: l c m ( x 1 , x 2 ) 的贡献。
所以容斥一下就是: x 对总答案的贡献为 ( 1 ) k + 1 n 1 x ,我们容易发现,如果设 f ( x ) = n 1 x ,那么贡献就是: ( 1 ) k + 1 f ( x ) ,这就恰好符合了莫比乌斯函数 u ( x ) 的定义。所以我们得到最终答案:
a n s = <munderover> i = 1 n </munderover> u ( i ) ( f ( i ) 1 )