杜教筛&套路总结】的更多相关文章

杜教筛 \[ \begin{split} (g*f)(i)&=\sum_{d|i}g(d)f(\frac id)\\ \Rightarrow g(1)S(n)&=\sum_{i=1}^n(g*f)(i)-\sum_{i=2}^ng(i)S(\frac ni) \end{split} \] 其中,\(S(x)\)为\(f()\)的前缀和. 套路一:\(\mu\) 由\((1*\mu)=e\),取\(g(x)=1\). \[ \begin{split} S(n)=1-\sum_{i=2}^nS…
我也不知道什么是"莫比乌斯反演"和"杜教筛" Part0 最近一直在搞这些东西 做了将近超过20道题目吧 也算是有感而发 写点东西记录一下自己的感受 如果您真的想学会莫比乌斯反演和杜教筛,请拿出纸笔,每个式子都自己好好的推一遍,理解清楚每一步是怎么来的,并且自己好好思考. Part1莫比乌斯反演 莫比乌斯反演啥都没有,就只有两个式子(一般只用一个) 原来我已经写过一次了,再在这里写一次 就只写常用的那个吧 基本的公式 对于一个函数\(f(x)\) 设\(g(x)=\…
[Luogu3768]简单的数学题(莫比乌斯反演,杜教筛) 题面 洛谷 \[求\sum_{i=1}^n\sum_{j=1}^nijgcd(i,j)\] $ n<=10^9$ 题解 很明显的把\(gcd\)提出来 \[\sum_{d=1}^nd\sum_{i=1}^n\sum_{j=1}^nij[gcd(i,j)==d]\] 习惯性的提出来 \[\sum_{d=1}^nd^3\sum_{i=1}^{n/d}\sum_{j=1}^{n/d}ij[gcd(i,j)==1]\] 后面这玩意很明显的来一发…
题意 求\(\sum_{i=1}^{n}\varphi(i)和\sum_{i=1}^{n}\mu(i)\) \(n <= 2^{31}-1\) 不会做啊... 只会线性筛,显然不能线性筛 这个时候就需要杜教筛 怎么筛 先看一下狄利克雷卷积 假设我们要求\(F(i)=\sum_{i=1}^{n}f(n)\)而\(n(10^{11}左右)\)比较大不能线性筛时考虑杜教筛 套路的推导: 先随意找一个函数\(g(i)\)和\(f(i)\)求狄利克雷卷积: \[(g * f)(n) = \sum_{d|n…
1237 最大公约数之和 V3 题意:求\(\sum_{i=1}^n\sum_{j=1}^n(i,j)\) 令\(A(n)=\sum_{i=1}^n(n,i) = \sum_{d\mid n}d \cdot \varphi(\frac{n}{d})\) \(ans = 2*\sum_{i=1}^n A(i) -\sum_{i=1}^ni\) 套路推♂倒 \[ S(n) =\sum_{i=1}^n\sum_{d\mid i}d \cdot \varphi(\frac{i}{d}) =\sum_{i…
hihocoder #1456 : Rikka with Lattice(杜教筛) 题意 : 给你一个\(n*m\)方格图,统计上面有多少个格点三角形,除了三个顶点,不覆盖其他的格点(包括边和内部). 答案对于\(998244353\)取模... (\(n,m \le 5 * 10^9\)) 题解 : 这个题十分的巧妙... 集训时是大佬ztzshiwo出的.. 据他所说,是不那么杜教筛的杜教筛QAQ 考试时候提示了一个皮克定理... 皮克定理: \[S=a+\frac{b}{2}-1\] \(…
[BZOJ4805]欧拉函数求和(杜教筛) 题面 BZOJ 题解 好久没写过了 正好看见了顺手切一下 令\[S(n)=\sum_{i=1}^n\varphi(i)\] 设存在的某个积性函数\(g(x)\) \[(g*\varphi)(i)=\sum_{d|i}g(d)\varphi(\frac{i}{d})\] \[\sum_{i=1}^n(g*\varphi(i))(i)\] \[=\sum_{i=1}^n\sum_{d|i}g(d)\varphi(\frac{i}{d})\] \[=\sum…
[BZOJ4916]神犇和蒟蒻(杜教筛) 题面 BZOJ 求 \[\sum_{i=1}^n\mu(i^2)\ \ 和\ \sum_{i=1}^n\phi(i^2)\] 其中\[n<=10^9\] 题解 第一问 搞笑的 不会做? 算了.. 还是说一下: 想想\(\mu(x)\)是怎么算的??? 既然是\(i^2\),每个因数的个数一定不会是\(1\) 所以除了\(\mu(1)\)外一定都是\(0\) 所以第一问的答案一定是\(1\) 第二问: 先看看要求的是什么 \(\phi(i^2)=i*\ph…
题意 求 $$\sum_{i = 1}^n \mu(i^2)$$ $$\sum_{i = 1}^n \phi(i^2)$$ $n \leqslant 10^9$ Sol zz的我看第一问看了10min. 感觉自己智商被侮辱了qwq 基础太垃圾qwq. 算了正经点吧,第一问答案肯定是$1$,还不明白的重学反演吧. 第二问其实也不难 定理: $\phi(i^2) = i\phi(i)$ $\sum_{d | n} \phi(d) = n$ 显然$i$ 考虑杜教筛的套路式子 $$g(1)s(n) =…
因为要求数值不同,不妨设gcd(x,y)=1.由提示可以知道,x/y是纯循环小数的充要条件是x·klen=x(mod y).因为x和y互质,两边同除x,得klen=1(mod y).那么当且仅当k和y互质,存在len使该式成立. 于是现在要求的就是 k是固定的,先不管后面一部分.套路地化式子: 设f(i)=[i⊥k].注意到k很小,并且显然有gcd(j,k)=gcd(j%k,k).于是O(k)的预处理出f的前缀和. 那么几乎已经做到线性了,能拿到84分,感觉非常棒. 然而要A掉还需要低于线性的做…