zoukankan      html  css  js  c++  java
  • 杜教筛

    前置芝士:要先会线性筛 还要会线性筛两个积性函数的迪利克雷卷积 https://www.cnblogs.com/zwfymqz/p/9337898.html https://zhuanlan.zhihu.com/p/32303115
    感觉这个杜教筛写的不错:https://www.cnblogs.com/peng-ym/p/9446555.html
    有一些莫比乌斯反演的题:https://blog.csdn.net/weixin_43973966/article/details/85338976
    orz hywn还有神仙的贝尔级数非常有用,理论上可以用来构造一切杜教筛可惜我不会https://www.cnblogs.com/hanyuweining/p/12020842.html
    元函数(epsilon(n)=[n=1]) 是迪利克雷卷积的单位元 任意函数与它卷积等于本身
    恒等函数(I(n)=1) (F(n)=sum_{d|n}G(d))就有(F=I*G)
    单位函数(id(n)=n) (F(n)=sum_{d|n}G(d)frac{n}{d})就有(F=id*G)
    (mu * I=epsilon) (varphi * I=id) (mu * id=varphi)
    求积性函数(f(n))的前缀和(S(n)=sum_{i=1}^n f(i))
    找到(g)(h)满足(h=f*g)且满足(g)(h)可以较快地求出前缀和

    [sum_{i=1}^n h(i)=sum_{i=1}^n sum_{d|i} g(d)f(frac{i}{d}) ]

    [=sum_{d=1}^ng(d)sum_{i=1}^{lfloor frac{n}{d} floor}f(i) ]

    [=sum_{d=1}^ng(d)S(lfloor frac{n}{d} floor) ]

    提出右面第一项

    [g(1)S(n)=sum_{i=1}^nh(i)-sum_{d=2}^ng(d)S(lfloor frac{n}{d} floor) ]

    通常有(g(1)=1)
    重点是找到合适的(g)
    一:求(mu)前缀和
    卷上(I)即可
    二:求(varphi)前缀和
    还是卷上(I)即可
    三:求(f(n)=nvarphi(n))的前缀和
    卷上id 发现((id*f)(n)=sum_{d|n}dvarphi(d)frac{n}{d}=nsum_{d|n}varphi(d)=n^2)
    四:求(f(n)=sum_{d|n}dmu(d))的前缀和
    (g(d)=dmu(d))则有(f=g*I)
    (g*id=epsilon) 所以(f*id=I)
    五:求(varphi * mu)的前缀和
    两次杜教筛 每次卷上(I)
    六:求(f(t)=sum_{k|t}k^2mu(k)frac{t}{k})的前缀和
    ( u(n)=n^2mu(n))(f= u*id)
    (id_2(n)=n^2) 发现(id_2* u=epsilon)
    ((nu*id)*id_2=nu*id_2*id=id)
    放一些基础的数学公式 没错我就是这么菜
    (sum_{i=l}^r i=(l+r)(r-l+1)/2)
    (sum_{i=1}^n i^2=n(n+1)(2n+1)/6)
    (sum_{i=1}^n i^3=[n(n+1)/2]^2)
    七:求约数个数函数(sigma_0)的前缀和
    不需要杜教筛。。
    (sum_{k=1}^nsigma_0(k)=sum_{k=1}^nsum_{d|k}1=sum_{d=1}^nlfloor frac{n}{d} floor)
    八:求(sum_{i=1}^nmu^2(i))
    即求(n)以内的无平方因子数的个数



    九:求(sum_{i=1}^nsigma_0(i^2))
    https://www.luogu.com.cn/blog/deco/solution-sp20173
    十:(f(n)=sum_{ile n}mu(i)lfloor frac{n}{i} floor^k)(sum_{nle N}f(n)) ( Nle 10^9 kle 10^5)

  • 相关阅读:
    [luogu]P1852跳跳棋
    StdDraw绘图
    Java-Timer-Stop
    人之初
    单例模式--延时初始化
    ubuntu忘记密码
    QT5 TK1 串口通信
    金秋十月
    级联分类器训练-----OpenCV
    Hu矩SVM训练及检测-----OpenCV
  • 原文地址:https://www.cnblogs.com/misaka10047/p/13290039.html
Copyright © 2011-2022 走看看