狄利克雷卷积是函数之间的一种运算

定义ο\omicronο运算表示狄利克雷卷积

则h(n)=g(n)οf(n)h(n)=g(n)\;\omicron\;f(n)h(n)=g(n)οf(n),可读作"g 卷 f"

其含义为 h(n)=∑d∣ng(d)f(nd)h(n)=\sum_{d\mid n}g(d)f(\frac{n}{d})h(n)=∑d∣n​g(d)f(dn​)

狄利克雷卷积的性质:

狄利克雷卷积满足交换律,结合律,分配率,即 :
h(n)οf(n)=f(n)οh(n)h(n)\;\omicron\;f(n)=f(n)\;\omicron\; h(n)h(n)οf(n)=f(n)οh(n)

h(n)οf(n)οg(n)=h(n)ο(f(n)οg(n))h(n)\;\omicron\;f(n)\;\omicron\;g(n)=h(n)\;\omicron\;(f(n)\;\omicron\;g(n))h(n)οf(n)οg(n)=h(n)ο(f(n)οg(n))

(h(n)+f(n))οg(n)=h(n)οg(n)+f(n)οg(n)(h(n)+f(n))\;\omicron\;g(n)=h(n)\;\omicron\;g(n)+f(n)\;\omicron\;g(n)(h(n)+f(n))οg(n)=h(n)οg(n)+f(n)οg(n)

狄利克雷卷积的另一个性质是,两个积性函数的狄利克雷卷积也是积性函数,即
若n=p×qn=p\times qn=p×q,且 p 与 q 互质,假如

f(n)=f(p)×f(q)f(n)=f(p)\times f(q)f(n)=f(p)×f(q),

g(n)=g(p)×g(q)g(n)=g(p)\times g(q)g(n)=g(p)×g(q),

h(n)=g(n)οf(n)h(n)=g(n)\;\omicron\;f(n)h(n)=g(n)οf(n),

那么 h(n)=h(p)×h(q)h(n)=h(p) \times h(q)h(n)=h(p)×h(q);

常见的狄利克雷卷积

莫比乌斯函数μ(x)\mu(x)μ(x)
μ(x)={1n=1(−1)kn无平方因数,且n=∏i=1kpi0其他情况\mu(x) = \left\{ \begin{array}{lr} 1 & n=1\\ (-1)^k & n无平方因数,且n=\prod_{i=1}^{k}{p_i}\\ 0 & 其他情况 \end{array} \right. μ(x)=⎩⎨⎧​1(−1)k0​n=1n无平方因数,且n=∏i=1k​pi​其他情况​
设函数I(n)=1,e(n)=[n=1],id(n)=n;I(n)=1,e(n)=[n=1],id(n)=n;I(n)=1,e(n)=[n=1],id(n)=n;其中[]表示括号内条件成立为1,否则为0
则有四个常见的性质

1:id=φοIid=\varphi\;\omicron\;Iid=φοI
展开得 n=∑d∣nφ(d)n=\sum_{d\mid n}{\varphi(d)}n=∑d∣n​φ(d),这是欧拉函数的一个重要性质,因此得证

2:e=μοIe=\mu\;\omicron\;Ie=μοI
这个式子ldy大佬讲的时候说,这个不好证,记住就行了

3:任何函数和e做狄利克雷卷积,值都不变
自己展开就得证了

4:φ=idομ\varphi=id\;\omicron\;\muφ=idομ
证明如下
对于性质二的式子:e=μοIe=\mu\;\omicron\;Ie=μοI
两边同时卷上φ\varphiφ,则φοe=μοIοφ\varphi\;\omicron\;e=\mu\;\omicron\;I\;\omicron\;\varphiφοe=μοIοφ
因为卷积具有交换律,结合律,所以
φοe=(Iοφ)ομ\varphi\;\omicron\;e=(I\;\omicron\;\varphi)\;\omicron\;\muφοe=(Iοφ)ομ
由性质1,性质3得
φ=idομ\varphi=id\;\omicron\;\muφ=idομ,得证

由以上性质可以得出一些其他性质:

5:比如,因为e=μοIe=\mu\;\omicron\;Ie=μοI
所以[n=1]=∑d∣nμ(d)[n=1]=\sum_{d\mid n}{\mu(d)}[n=1]=∑d∣n​μ(d)
当 n=gcd(i,j)n=gcd(i,j)n=gcd(i,j) 的时候
[gcd(i,j)=1]=∑d∣gcd(i,j)μ(d)=∑d∣i,d∣jμ(d)[gcd(i,j)=1]=\sum_{d\mid gcd(i,j)}{\mu(d)}=\sum_{d\mid i,d\mid j}{\mu(d)}[gcd(i,j)=1]=∑d∣gcd(i,j)​μ(d)=∑d∣i,d∣j​μ(d)

6:同理因为 id=φοIid=\varphi\;\omicron\;Iid=φοI
所以 n=∑d∣nφ(d)n=\sum_{d\mid n}{\varphi(d)}n=∑d∣n​φ(d)
当n=gcd(i,j)n=gcd(i,j)n=gcd(i,j)时,
gcd(i,j)=∑d∣gcd(i,j)φ(d)=∑d∣i,d∣jφ(d)gcd(i,j)=\sum_{d\mid gcd(i,j)}{\varphi(d)}=\sum_{d\mid i,d\mid j}{\varphi(d)}gcd(i,j)=∑d∣gcd(i,j)​φ(d)=∑d∣i,d∣j​φ(d)
这也成为了计算 gcd 的另一种方法,在化简式子时也很常用

莫比乌斯反演

若f,F为任意函数,则
若fοI=Ff\;\omicron\;I=FfοI=F
所以同时卷上μ\muμ
fοIομ=Fομ\;f\omicron\;I\;\omicron\;\mu=F\;\omicron\;\mufοIομ=Fομ
即fοe=Fομ\;f\omicron\;e=F\;\omicron\;\mufοe=Fομ
f=Fομ\;f=F\;\omicron\;\muf=Fομ

展开就表示为
若F(n)=∑d∣nf(d)F(n)=\sum_{d\mid n}{f(d)}F(n)=∑d∣n​f(d)
则f(n)=∑d∣nF(d)μ(nd)f(n)=\sum_{d\mid n}{F(d)\mu(\frac{n}{d})}f(n)=∑d∣n​F(d)μ(dn​)
这就是莫比乌斯反演,若果∑d∣nF(d)μ(nd)\sum_{d\mid n}{F(d)\mu(\frac{n}{d})}∑d∣n​F(d)μ(dn​)很好求,就可以求 f

例题 [NOI2010] 能量采集

洛谷题目传送门
化简一下题意,就是求∑i=1n∑j=1m(2×gcd(i,j)−1)\sum_{i=1}^{n}\sum_{j=1}^{m}(2\times gcd(i,j)-1)∑i=1n​∑j=1m​(2×gcd(i,j)−1)

那么也就是求出∑i=1n∑j=1mgcd(i,j)\sum_{i=1}^{n}\sum_{j=1}^{m}gcd(i,j)∑i=1n​∑j=1m​gcd(i,j)就可以了

根据上方的性质6,该式子可以化为

∑i=1n∑j=1m∑d∣i,d∣jφ(d)\sum_{i=1}^{n}\sum_{j=1}^{m}\sum_{d\mid i,d\mid j}{\varphi(d)}∑i=1n​∑j=1m​∑d∣i,d∣j​φ(d)
将最后一个∑\sum∑提前,得
∑dmin(m,n)φ(d)∑d∣in∑d∣jm1\sum_d^{min(m,n)}\varphi(d)\sum_{d\mid i}^n\sum_{d\mid j}^m 1∑dmin(m,n)​φ(d)∑d∣in​∑d∣jm​1
将最后一项化简,得
∑dmin(m,n)φ(d)⌊nd⌋⌊md⌋\sum_d^{min(m,n)}\varphi(d)\lfloor \frac{n}{d} \rfloor\lfloor \frac{m}{d} \rfloor∑dmin(m,n)​φ(d)⌊dn​⌋⌊dm​⌋
于是我们预处理处每一个φ(d)\varphi(d)φ(d),就行了
最后把答案乘2,在减去n*m就行了

#include<bits/stdc++.h>
using namespace std;
const long long N = 1e5+7;
long long phi[N],n,m;
void euler(long long n)
{for(long long i=1;i<=n;i++)phi[i]=i;for(long long i=2;i<=n;i++){if(phi[i]==i){for(long long j=i;j<=n;j+=i)phi[j]=phi[j]/i*(i-1);}}
}
int main()
{cin>>n;cin>>m;euler(min(n,m));long long ans=0;for(long long i=1;i<=min(n,m);i++){ans=ans+phi[i]*floor(n/i)*floor(m/i);}cout<<2*ans-(m*n);return 0;
}

狄利克雷卷积学习记录相关推荐

  1. 狄利克雷卷积_狄利克雷卷积学习笔记

    蒟蒻我在莫比乌斯反演学习笔记里留下了几个坑,于是开始漫长的填坑路. 狄利克雷卷积学习笔记 前置知识1:数论函数 什么是数论函数呢?数论函数指定义域为正整数,陪域为复数的函数. 以下知识中涉及到的函数大 ...

  2. 【原创】积性函数和狄利克雷卷积学习笔记 未完成

    Index 狄利克雷卷积和积性函数 〇.说在前面 一.一些定义 1.数论函数 2.积性函数与完全积性函数 (1)定义 (2)举例 ①(普通)积性函数 ②完全积性函数 (3)性质 二.狄利克雷卷积 1. ...

  3. 数学/数论专题-学习笔记:狄利克雷卷积

    数学/数论专题-学习笔记:狄利克雷卷积 1. 前言 2. 一些基础函数 3. 积性函数 4. 狄利克雷卷积 5. 总结 6. 参考资料 1. 前言 狄利克雷卷积,是学习与继续探究 μ\muμ 函数和 ...

  4. 狄利克雷卷积_算法学习笔记(35): 狄利克雷卷积

    这篇笔记完全是数学内容,但它是之后一些算法的基础. 所谓狄利克雷卷积,是定义在数论函数( 的函数)间的一种二元运算,可这样定义: 也常常等价地写作: 为了之后讨论方便,先定义一些常用的数论函数的符号: ...

  5. 【学习小记】狄利克雷卷积+杜教筛

    Preface 这东西分明就是玄学暴力 用来求简单的数论函数的前缀和,像φ,μφ,\mu这类的东西 当然,约数和,约数个数之类的也是可以的 Text 数论函数是指定义域是整数,陪域是复数的函数 Dir ...

  6. Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)

    Pytorch学习记录-torchtext和Pytorch的实例1 0. PyTorch Seq2Seq项目介绍 1. 使用神经网络训练Seq2Seq 1.1 简介,对论文中公式的解读 1.2 数据预 ...

  7. 积性函数与Dirichlet卷积 学习小记

    前言 首先感谢 XHM 大佬的悉心指导,我懂得了不少~. 链一下他关于这方面的见解.博客--XHM 的Dirichlet卷积 学习小记 一些定义 回归正题,这次我学习了一下狄利克雷卷积方面的知识. 先 ...

  8. seq2seq模型_Pytorch学习记录-Seq2Seq模型对比

    Pytorch学习记录-torchtext和Pytorch的实例4 0. PyTorch Seq2Seq项目介绍 在完成基本的torchtext之后,找到了这个教程,<基于Pytorch和tor ...

  9. 可变形卷积学习(RepPoints)

    近来在学习anchor-free网络,看到了可变形卷积(Deformable Convolutional Networks(DCN))的内容,大致总结一下,便于后面回顾. 可变形卷积可从以下三篇论文去 ...

最新文章

  1. 《深入理解Java虚拟机》读书笔记一
  2. (转)OpenLayers3基础教程——OL3 介绍interaction
  3. Android中通过反射和getResource()得到id的方式去改变View的显示效果
  4. 软件测试薪资标准新鲜出炉,你达标了吗?
  5. opencv4找不到opencv2/core/core.hpp: No such file or directory
  6. 襟翼是什么?——浅述飞控襟翼系统
  7. Steam上传游戏包体的三种方法
  8. java计数器_Java高效计数器
  9. Flash背景透明(透明背景)设置方法
  10. 谷歌浏览器提示因应用程序的并行配置不正确无法启动
  11. win7系统桌面上计算机不见了怎么办,win7桌面上我的电脑图标不见了怎么办
  12. 电脑图片打不开并且显示没有注册类怎么办?
  13. 江南大学 超级计算机,基于分布式并行计算的高性能演化算法研究
  14. JAVA设计模式之桥接模式
  15. java生成卡号_java 生成银行卡号
  16. 机动车驾驶证考场叫号和车牌识别
  17. 树莓派3B安装影音系统OSMC
  18. [Excel 替换数字/数值格式混乱] ,txt协助解决
  19. 纯JS+HTML+CSS实现表格增删改查翻页--模板文件管理
  20. 网络游戏前后端时间同步

热门文章

  1. 目前为止学习过的循环解析过程
  2. mac 邮箱客户端之腾讯企业邮箱设置 无法验证账号或密码
  3. python tensorflow学习笔记(六)最小二乘法
  4. 2016年最新苹果开发者账号注册流程详解(公司账号篇)
  5. NVIDIA嵌入式开发板Jetson TX1教程
  6. 【自然语言处理】详说中文自动分词
  7. EChat(简易聊天项目)五、存储聊天记录中的图片
  8. Shader Graph学习(一)
  9. vue-cli热更新 失效
  10. C编译错误,运行错误以及常见问题。