反演区
莫比乌斯反演
这就是个毒瘤...
设
则有
这个不常用...
下面这个用的多一点。
设
则有
设 nt = d 则有
此处N为枚举上界。
莫比乌斯函数的来源:
由F(x)倒推出f(x)的时候F(x)前面的系数为miu(x)
求和交换的一些技巧:
打表n = 60即可(伪)证明。
没了。这TM比《组合数学》上面讲的简单多了...

1 inline void getmiu(int b) { 2 miu[1] = 1; 3 for(int i = 2; i <= b; i++) { 4 if(!vis[i]) { 5 p[++top] = i; 6 miu[i] = -1; 7 } 8 for(int j = 1; j <= top && i * p[j] <= b; j++) { 9 vis[i * p[j]] = 1; 10 if(i % p[j] == 0) { 11 break; 12 } 13 miu[i * p[j]] = -miu[i]; 14 } 15 } 16 return; 17 }
杜教筛我显然不会...
遇到超过1e8的miu,可以尝试O(sqrt(x))来求。
下面通过例题来加深理解。
整除分块 [HAOI2011]Problem b [CQOI2007]余数求和