狄利克雷卷积学习记录
狄利克雷卷积是函数之间的一种运算
定义ο\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∣ng(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)k0n=1n无平方因数,且n=∏i=1kpi其他情况
设函数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∣nf(d)
则f(n)=∑d∣nF(d)μ(nd)f(n)=\sum_{d\mid n}{F(d)\mu(\frac{n}{d})}f(n)=∑d∣nF(d)μ(dn)
这就是莫比乌斯反演,若果∑d∣nF(d)μ(nd)\sum_{d\mid n}{F(d)\mu(\frac{n}{d})}∑d∣nF(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=1mgcd(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∣jm1
将最后一项化简,得
∑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:数论函数 什么是数论函数呢?数论函数指定义域为正整数,陪域为复数的函数. 以下知识中涉及到的函数大 ...
- 【原创】积性函数和狄利克雷卷积学习笔记 未完成
Index 狄利克雷卷积和积性函数 〇.说在前面 一.一些定义 1.数论函数 2.积性函数与完全积性函数 (1)定义 (2)举例 ①(普通)积性函数 ②完全积性函数 (3)性质 二.狄利克雷卷积 1. ...
- 数学/数论专题-学习笔记:狄利克雷卷积
数学/数论专题-学习笔记:狄利克雷卷积 1. 前言 2. 一些基础函数 3. 积性函数 4. 狄利克雷卷积 5. 总结 6. 参考资料 1. 前言 狄利克雷卷积,是学习与继续探究 μ\muμ 函数和 ...
- 狄利克雷卷积_算法学习笔记(35): 狄利克雷卷积
这篇笔记完全是数学内容,但它是之后一些算法的基础. 所谓狄利克雷卷积,是定义在数论函数( 的函数)间的一种二元运算,可这样定义: 也常常等价地写作: 为了之后讨论方便,先定义一些常用的数论函数的符号: ...
- 【学习小记】狄利克雷卷积+杜教筛
Preface 这东西分明就是玄学暴力 用来求简单的数论函数的前缀和,像φ,μφ,\mu这类的东西 当然,约数和,约数个数之类的也是可以的 Text 数论函数是指定义域是整数,陪域是复数的函数 Dir ...
- Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)
Pytorch学习记录-torchtext和Pytorch的实例1 0. PyTorch Seq2Seq项目介绍 1. 使用神经网络训练Seq2Seq 1.1 简介,对论文中公式的解读 1.2 数据预 ...
- 积性函数与Dirichlet卷积 学习小记
前言 首先感谢 XHM 大佬的悉心指导,我懂得了不少~. 链一下他关于这方面的见解.博客--XHM 的Dirichlet卷积 学习小记 一些定义 回归正题,这次我学习了一下狄利克雷卷积方面的知识. 先 ...
- seq2seq模型_Pytorch学习记录-Seq2Seq模型对比
Pytorch学习记录-torchtext和Pytorch的实例4 0. PyTorch Seq2Seq项目介绍 在完成基本的torchtext之后,找到了这个教程,<基于Pytorch和tor ...
- 可变形卷积学习(RepPoints)
近来在学习anchor-free网络,看到了可变形卷积(Deformable Convolutional Networks(DCN))的内容,大致总结一下,便于后面回顾. 可变形卷积可从以下三篇论文去 ...
最新文章
- 《深入理解Java虚拟机》读书笔记一
- (转)OpenLayers3基础教程——OL3 介绍interaction
- Android中通过反射和getResource()得到id的方式去改变View的显示效果
- 软件测试薪资标准新鲜出炉,你达标了吗?
- opencv4找不到opencv2/core/core.hpp: No such file or directory
- 襟翼是什么?——浅述飞控襟翼系统
- Steam上传游戏包体的三种方法
- java计数器_Java高效计数器
- Flash背景透明(透明背景)设置方法
- 谷歌浏览器提示因应用程序的并行配置不正确无法启动
- win7系统桌面上计算机不见了怎么办,win7桌面上我的电脑图标不见了怎么办
- 电脑图片打不开并且显示没有注册类怎么办?
- 江南大学 超级计算机,基于分布式并行计算的高性能演化算法研究
- JAVA设计模式之桥接模式
- java生成卡号_java 生成银行卡号
- 机动车驾驶证考场叫号和车牌识别
- 树莓派3B安装影音系统OSMC
- [Excel 替换数字/数值格式混乱] ,txt协助解决
- 纯JS+HTML+CSS实现表格增删改查翻页--模板文件管理
- 网络游戏前后端时间同步