Mobius反演的套路
T1
\(\sum_{i=1}^N \sum_{j=1}^M [(i,j)=1]\)
\(f(d)=\sum_{i=1}^N \sum_{j=1}^M [(i,j)=d]\)
\(g(d)=\sum_{i=1}^N \sum_{i=1}^M [d|(i,j)]=\lfloor \frac{N}{d} \rfloor \lfloor \frac{M}{d} \rfloor\)
\(g(n)=\sum_{n|d} f(d)\)
\(f(n)=\sum_{n|d} \mu(\frac{d}{n})g(d)\)
\(f(1)=\sum_{i=1}^{\min(N,M)} \mu(i)\lfloor \frac{N}{i} \rfloor \lfloor \frac{M}{i} \rfloor\)
T2
\(\sum_{i=1}^N \sum_{j=1}^M (i,j)\)
\(f(d)=\sum_{i=1}^N \sum_{j=1}^M d[(i,j)=d]=\sum_{i=1}^{\lfloor \frac{\min(N,M)}{d} \rfloor} d\mu(i) \lfloor \frac{N}{id} \rfloor \lfloor \frac{M}{id} \rfloor\)
\(Ans=\sum_{d=1}^{\min(N,M)} f(d)=\sum_{d=1}^{\min(N,M)} \sum_{i=1}^{\lfloor \frac{\min(N,M)}{d} \rfloor} d\mu(i) \lfloor \frac{N}{id} \rfloor \lfloor \frac{M}{id} \rfloor\)
设\(w=id\)
\(Ans=\sum_{w=1}^{\min(N,M)} \sum_{d|w} d\mu(\frac{w}{d}) \lfloor \frac{N}{w} \rfloor \lfloor \frac{M}{w} \rfloor\)
\(\sum_{d|w} d\mu(\frac{w}{d})=\phi(w)\)显然是积性函数,线性筛后做下前缀和,离线\(\Theta(\min(N,M))\)
\(\sum_{w=1}^{\min(N,M)} \lfloor \frac{N}{w} \rfloor \lfloor \frac{M}{w} \rfloor\) 整除分块可以做到在线\(\Theta(\sqrt{N}+\sqrt{M})\)
多组询问下总复杂度\(\Theta(\min(N,M)+T(\sqrt{N}+\sqrt{M}))\)
T3
\(\sum_{i=1}^N \sum_{j=1}^M \frac{ij}{(i,j)}\)
\(f(d)=\sum_{i=1}^{\lfloor \frac{N}{d} \rfloor} \sum_{j=1}^{\lfloor \frac{M}{d} \rfloor} ijd[(i,j)=1]=d \sum_{i=1}^{\lfloor \frac{N}{d} \rfloor} \sum_{j=1}^{\lfloor \frac{M}{d} \rfloor} ij[(i,j)=1]\)
\(Ans=\sum_{d=1}^{\min(N,M)} f(d)\)
\(Ans=\sum_{d=1}^{\min(N,M)} d \sum_{i=1}^{\lfloor \frac{N}{d} \rfloor} \sum_{j=1}^{\lfloor \frac{M}{d} \rfloor} ij\sum_{n|(i,j)} \mu(n)\)
\(Ans=\sum_{d=1}^{\min(N,M)} d \sum_{n=1}^{\lfloor \frac{\min(N,M)}{d} \rfloor} n (\sum_{i=1}^{\lfloor \frac{N}{dn} \rfloor} i)n(\sum_{j=1}^{\lfloor \frac{M}{dn} \rfloor} j)\mu(n)\)
设\(w=dn\)
\(Ans=\sum_{w=1}^{\min(N,M)} (\sum_{i=1}^{\lfloor \frac{N}{w} \rfloor} i)(\sum_{j=1}^{\lfloor \frac{M}{w} \rfloor} j) w\sum_{n|w} n \mu(n)\)
线筛前缀和+整除分块
复杂度与上题相同
T4
\(\sum_{i=1}^N \sum_{j=1}^M d(ij)\)
\(\sum_{i=1}^N \sum_{j=1}^M \sum_{a|i} \sum_{b|j} [(a,b)=1]\)
$\sum_{i=1}^N \sum_{j=1}^M \lfloor \frac{N}{i} \rfloor \lfloor \frac{M}{j} \rfloor[(i,j)=1] $
设\(w=(i,j)\)
\(\sum_{w=1}^{\min(N,M)} \mu(w) \sum_{i=1}^{\lfloor \frac{N}{w} \rfloor} \sum_{j=1}^{\lfloor \frac{M}{w} \rfloor} \lfloor \frac{N}{iw} \rfloor \lfloor \frac{M}{jw} \rfloor\)
整除分块+线筛前缀和
复杂度仍然与上题相同
Mobius反演的套路的更多相关文章
- Mobius 反演与杜教筛
积性函数 积性函数 指对于所有互质的整数 aaa 和 bbb 有性质 f(ab)=f(a)f(b)f(ab)=f(a)f(b)f(ab)=f(a)f(b) 的数论函数. 特别地,若所有的整数 aaa ...
- Mobius反演学习
这篇文章参考了许多资料和自己的理解. 先放理论基础. 最大公约数:小学学过,这里只提一些重要的公式: $·$若$a=b$,则$\gcd(a,b)=a=b$: $·$若$\gcd(a,b)=d$,则$\ ...
- SPOJ PGCD (mobius反演 + 分块)
转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlove 题意 :求满足gcd(i , j)是素数(1 &l ...
- 关于Mobius反演
欧拉函数 \(\varphi\) \(\varphi(n)=\)表示不超过 \(n\) 且与 \(n\) 互质的正整数的个数 \[\varphi(n)=n\cdot \prod_{i=1}^{s}(1 ...
- mobius反演讲解
mobius反演的基本形式为,假设知道函数F(x)=Σf(d) d|x,那么我们可以推出f(x)=Σmiu(d)*F(x/d) d|x,另一基本形式为假设知道函数F(x)=Σf(d) x|d,那么我们 ...
- [基本操作] Mobius 反演, Dirichlet 卷积和杜教筛
Dirichlet 卷积是两个定义域在正整数上的函数的如下运算,符号为 $*$ $(f * g)(n) = \sum_{d|n}f(d)g(\frac{n}{d})$ 如果不强调 $n$ 可简写为 $ ...
- Mobius反演与积性函数前缀和演学习笔记 BZOJ 4176 Lucas的数论 SDOI 2015 约数个数和
下文中所有讨论都在数论函数范围内开展. 数论函数指的是定义域为正整数域, 且值域为复数域的函数. 数论意义下的和式处理技巧 因子 \[ \sum_{d | n} a_d = \sum_{d | n} ...
- Note -「Mobius 反演」光速入门
目录 Preface 数论函数 积性函数 Dirichlet 卷积 Dirichlet 卷积中的特殊函数 Mobius 函数 & Mobius 反演 Mobius 函数 Mobius 反演 基 ...
- Mobius 反演
上次看莫比乌斯繁衍反演是一个月前,讲道理没怎么看懂.. 然后出去跪了二十天, 然后今天又开始看发现其实并不难理解 开个这个仅记录一下写过的题. HAOI 2011 B 这应该是莫比乌斯反演的模 ...
随机推荐
- mongoose的save无效的问题
概述 今天朋友遇到了使用mongoose中的save无效的问题,我通过查找资料帮他解决了,把心得记录下来,供以后开发时参考,相信对其他人也有用. 参考资料: Mongoose学习参考文档--基础篇 M ...
- itext实现pdf自动定位合同签订
需求 需要实现如下效果(最终效果) 思考 需求方的要求就是实现签订合同,实现方法不限,但过程中又提出需要在签章的过程中把签订日期的文字也打上去,这就有点坑了~ 一开始的想法是想办法定位需要签名的位置, ...
- CI-CD平台搭建过程整理
Coding ---> gitlab --->jenkins ---> maven(nexus) ---> 编译构建成image ---> Harbor ---> ...
- C语言中关键字restrict的概念,使用范围,例子
概念: restrict,C语言中的一种类型限定符(Type Qualifiers),用于告诉编译器,对象已经被指针所引用,不能通过除该指针外所有其他直接或间接的方式修改该对象的内容. 渊源: res ...
- SkyWalking-netcore
详细安装步骤:https://www.jianshu.com/p/3ddd986c7581?from=groupmessage SkyWalking-netcore 官网:https://github ...
- 导入项目报错【Minimum supported Gradle version is 3.3. Current version is 2.14.1】
问题描述 导入项目的时候,因为同事的开发环境是Android Studio 2.3.2 Gradle3.3.而我的开发环境是Android Studio 2.2.2 Gradle2.14.1. 所以 ...
- jvm详情——2、Java对象在jvm中的大小
Java对象的大小 基本数据的类型的大小是固定的,这里就不多说了.对于非基本类型的Java对象,其大小就值得商榷.在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有任 ...
- 高性能Mysql笔记 — 索引
index优化 对于频繁作为查询条件的字段使用索引 注意索引字段类型的隐式转换,数据库类型和应用类型要一致 索引的种类 唯一索引,成为索引的列不能重复 单列索引,一个索引只包含一列 单列前缀索引,有些 ...
- Ubuntu 18.04.1 搭建Java环境和HelloWorld
一.搭建Java环境 系统环境 Ubuntu 18.04.1 JDK 8 IDEA 2018.2 1.下载JDK 官网地址:http://www.oracle.com/technetwork/java ...
- Dubbo 源码解析四 —— 负载均衡LoadBalance
欢迎来我的 Star Followers 后期后继续更新Dubbo别的文章 Dubbo 源码分析系列之一环境搭建 Dubbo 入门之二 --- 项目结构解析 Dubbo 源码分析系列之三 -- 架构原 ...