![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
杜教筛
文章平均质量分 76
_beginend
这个作者很懒,什么都没留下…
展开
-
bzoj 3944: Sum 杜教筛
题意分析直接用线性筛来求肯定不行,我们考虑别的方法。先来考虑ans2吧先来考虑ans2吧设S(n)=∑ni=1μ(i)设S(n)=\sum_{i=1}^n\mu(i)根据μ的性质∑d|iμ(d)=0(i>1)或1(i=1)可得根据\mu的性质\sum_{d|i}\mu(d)=0(i>1)或1(i=1)可得∑ni=1∑d|iμ(d)=1\sum_{i=1}^n\sum_{d|i}\mu(d)=1∑ni原创 2017-01-21 12:18:48 · 599 阅读 · 0 评论 -
bzoj 4176: Lucas的数论 莫比乌斯反演+杜教筛
题意设f(i)f(i)表示i的约数个数。给出n,求∑ni=1∑nj=1f(ij)\sum_{i=1}^n\sum_{j=1}^nf(ij)。答案模1e9+7. n分析按套路来,有f(nm)=∑i|n∑j|m[(i,j)=1]f(nm)=\sum_{i|n}\sum_{j|m}[(i,j)=1] 把这条式子代进原式,反演一波,就可以得到ans=∑d=1nμ(d)(∑i=1⌊nd⌋原创 2018-01-09 20:18:30 · 295 阅读 · 0 评论 -
51nod 1220 约数之和 杜教筛
题意d(k)表示k的所有约数的和。d(6) = 1 + 2 + 3 + 6 = 12。 定义S(N) = ∑1例如:S(3) = d(1) + d(2) + d(3) + d(2) + d(4) + d(6) + d(3) + d(6) + d(9) = 59,S(1000) = 563576517282。 给出正整数N,求S(N),由于结果可能会很大,输出Mod 1000000007(原创 2018-01-08 14:35:33 · 505 阅读 · 0 评论 -
bzoj 3512: DZY Loves Math IV 杜教筛
题意给出n,m,求∑ni=1∑nj=1φ(ij)\sum_{i=1}^n\sum_{j=1}^n\varphi(ij)。答案模1e9+7. n=105,m=109n分析看到n辣么小,考虑枚举n。 设S(n,m)=∑i=1mφ(ni)S(n,m)=\sum\limits_{i=1}^m\varphi(ni) 那么我们要求的就是∑i=1nS(i,m)\sum\limits_{i=1}原创 2018-01-15 11:28:13 · 256 阅读 · 0 评论 -
51nod 1227 平均最小公倍数 莫比乌斯反演+杜教筛
题意Lcm(a,b)表示a和b的最小公倍数,A(n)表示Lcm(n,i)的平均数(1 例如:A(4) = (Lcm(1,4) + Lcm(2,4) + Lcm(3,4) + Lcm(4,4)) / 4 = (4 + 4 + 12 + 4) / 4 = 6。 F(a, b) = A(a) + A(a + 1) + …… A(b)。(F(a,b) = ∑A(k), a 例如:F(2, 4)原创 2018-01-05 07:53:51 · 259 阅读 · 0 评论 -
51nod 2026 Gcd and Lcm 杜教筛+数论
题意已知f(x)=∑d|xμ(d)∗df(x)=\sum_{d|x}\mu(d)*d 现在请求出下面式子的值 ∑i=1n∑j=1nf(gcd(i,j))∗f(lcm(i,j))\sum\limits_{i=1}^n\sum\limits_{j=1}^nf(gcd(i,j))*f(lcm(i,j)) 答案模1e9+7。 n<=109n<=10^9分析设x=pa11∗...∗pakkx=p_1^原创 2017-12-28 15:06:38 · 373 阅读 · 0 评论 -
51nod 1222 最小公倍数计数 莫比乌斯反演+杜教筛
题意定义F(n)表示最小公倍数为n的二元组的数量。 即:如果存在两个数(二元组)X,Y(X <= Y),它们的最小公倍数为N,则F(n)的计数加1。 例如:F(6) = 5,因为[2,3] [1,6] [2,6] [3,6] [6,6]的最小公倍数等于6。 给出一个区间[a,b],求最小公倍数在这个区间的不同二元组的数量。 例如:a = 4,b = 6。符合条件的二元组包括: [1,4]原创 2017-10-30 20:03:23 · 353 阅读 · 0 评论 -
bzoj 4916: 神犇和蒟蒻 杜教筛
题意求A=∑Ni=1μ(i2)和B=∑Ni=1φ(i2)A=\sum_{i=1}^N{\mu (i^2)}和B=\sum_{i=1}^N{\varphi (i^2)} n<=1e9,答案模1e9+7分析md第一问是什么鬼??? 第二问想到是杜教筛(因为不会洲阁筛),但是没想到用哪个函数和f卷起来。其实考虑到f(d)=φ(d)∗df(d)=\varphi(d)*d,要把常数消掉的话,最好就是把f和原创 2017-06-05 15:53:01 · 581 阅读 · 0 评论 -
bzoj 3930: [CQOI2015]选数 莫比乌斯反演+杜教筛
题意我们知道,从区间[L,H](L和H为整数)中选取N个整数,总共有(H-L+1)^N种方案。小z很好奇这样选出的数的最大公约数的规律,他决定对每种方案选出的N个整数都求一次最大公约数,以便进一步研究。然而他很快发现工作量太大了,于是向你寻求帮助。你的任务很简单,小z会告诉你一个整数K,你需要回答他最大公约数刚好为K的选取方案有多少个。由于方案数较大,你只需要输出其除以1000000007的余数即可原创 2017-04-17 21:35:11 · 581 阅读 · 0 评论 -
bzoj 4805: 欧拉函数求和 杜教筛
题意给出一个数字N,求sigma(phi(i)),1<=i<=N。 正整数N。N<=2*10^9分析同bzoj 3994代码#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<algorithm>using namespace std;typedef long long LL;const原创 2017-04-12 11:02:34 · 973 阅读 · 0 评论 -
luogu 3768 简单的数学题 莫比乌斯反演+杜教筛
题意给出n,pn,pn,p,求(∑i=1n∑j=1nijgcd(i,j))modp(∑i=1n∑j=1nijgcd(i,j))modp(\sum_{i=1}^n\sum_{j=1}^nijgcd(i,j))\bmod p n≤1010n≤1010n\le10^{10}分析不多说,直接上式子∑i=1n∑j=1nijgcd(i,j)∑i=1n∑j=1nijgcd(i,j)\sum_{...原创 2018-04-26 14:43:06 · 239 阅读 · 0 评论