• 莫比乌斯反演&杜教筛学习笔记


    莫比乌斯反演&杜教筛学习笔记

    (O(n^{frac23}))解决积性函数前缀和

    • 狄利克雷卷积

    [h(n)=sum_{d|n}f(d)*g(frac n d) ]

    (varepsilon)为狄利克雷卷积的单位元

    两个积性函数卷积后仍为积性函数

    • 例子

    [varepsilon=mu*1 ]

    [d=1*1 ]

    [sigma=d*1 ]

    [phi=mu*Id ]

    [Id=phi*1 ]

    • 莫比乌斯反演

    [f(n)=sum_{d|n}g(d) ]

    [g(n)=sum_{d|n}mu(d)f(frac n d) ]

    [d(i*j)=sum_{x|i}sum_{y|j}[gcd(x,y)=1] ]

    常用方法:

    1. 变换顺序
    2. 用T代乘积
    3. 换元
    4. 枚举约数
    5. 卷积
    6. 反演
    7. 转化思考角度
    • 反演扩展

    [f(n)=sum_{i=1}^nt(i)g(lfloorfrac n i floor) ]

    [g(n)=sum_{i=1}^nmu(i)t(i)f(lfloorfrac n i floor) ]

    • 推式子

    [S(n)=sum_{i=1}^nf(i) ]

    [构造一个h=g*f(g,h均需构造,*代表狄利克雷卷积) ]

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

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

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

    [sum_{i=1}^nh(i)=g(1)S(n)+sum_{d=2}^ng(d)S(lfloorfrac nd floor) ]

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

    要求:(h(i))前缀要好求

    一般用线性筛筛一部分,大概为(n^{frac23}),最快

    数学加油ヾ(◍°∇°◍)ノ゙

  • 相关阅读:
    whereis which type find
    souce and bash 的区别
    systemctl daemon-reload
    linux /etc/profile bashrc bash_profile
    ulimt 和 sysctl
    MySQL 问题总结
    asyncio
    Linux 中 MySQL 操作
    总结一波 Redis 面试题
    os 模块 和 re 模块
  • 原文地址:https://www.cnblogs.com/aurora2004/p/12660748.html
Copyright © 2020-2023  润新知