莫比乌斯反演
前言&简介
莫比乌斯反演是数论数学中很重要的内容,可以用于解决很多组合数学的问题。
——百度百科…
很多人会觉得莫比乌斯反演是一种很高级的数学知识,其实你会发现…这只是基础。当然言归正传,学号莫比乌斯反演得先学会一个叫做整除分块的东西。(数论分块…)
莫比乌斯函数
-
莫比乌斯反演是建立在容斥数学基础上出现的一种用于解决组合数学问题的优化算法,本质上是关于各个函数的相互转化的神奇算法,我们可以换个角度来理解:对于一些我们很难求解的函数,我们可以从它的倍数或者约束考虑,二莫比乌斯反演就是这种反演算法中比较重要的一类。
下面开始介绍
前置知识
引理1:
∀ a , b , c ∈ Z , ⌊ a b c ⌋ = ⌊ ⌊ a b ⌋ c ⌋ \forall a,b,c\in Z,\lfloor \frac{a}{bc} \rfloor = \lfloor \frac{\lfloor \frac{a}{b} \rfloor}{c} \rfloor ∀a,b,c∈Z,⌊bca⌋=⌊c⌊ba⌋⌋
证明:(简略)
a b = ⌊ a b ⌋ + r ( 0 < = r < 1 ) ⟹ ⌊ a b c ⌋ = ⌊ a b 1 c ⌋ = ⌊ 1 c ( ⌊ a b ⌋ + r ) ⌋ = ⌊ ⌊ a b ⌋ c + r c ⌋ = ⌊ ⌊ a b ⌋ c ⌋ ( 因 为 0 < = r < c ⟹ ⌊ r c ⌋ = 0 ) ( 由 于 r 已 经 无 法 再 基 于 a / b c 提 供 一 个 整 数 值 所 以 可 以 消 去 ) \frac{a}{b}=\lfloor \frac{a}{b} \rfloor+r(0<=r<1)\\ \implies \lfloor \frac{a}{bc} \rfloor=\lfloor \frac{a}{b} \frac{1}{c} \rfloor=\lfloor \frac{1}{c}(\lfloor \frac{a}{b} \rfloor+r) \rfloor=\lfloor \frac{\lfloor \frac{a}{b} \rfloor}{c} +\frac{r}{c}\rfloor=\lfloor \frac{\lfloor \frac{a}{b} \rfloor}{c} \rfloor\\ (因为0<=r<c\implies \lfloor \frac{r}{c}\rfloor=0)(由于r已经无法再基于a/bc提供一个整数值所以可以消去) ba=⌊ba⌋+r(0<=r<1)⟹⌊bca⌋=⌊bac1⌋=⌊c1(⌊ba⌋+r)⌋=⌊c⌊ba⌋+cr⌋=⌊c⌊ba⌋⌋(因为0<=r<c⟹⌊cr⌋=0)(由于r已经无法再基于a/bc提供一个整数值所以可以消去)
引理2
∀ n ∈ N + , ∣ { ⌊ n d ⌋ ∣ d ∈ N + , d < = n } ∣ < = ⌊ 2 n ⌋ \forall n\in N_{+},|\{\lfloor \frac{n}{d} \rfloor|d\in N_{+},d<=n\}|<=\lfloor 2\sqrt n \rfloor ∀n∈N+,∣{
⌊dn⌋∣d∈N+,d<=n}∣<=⌊2n⌋
∣ V ∣ |V| ∣V∣表示集合 V V V的元素个数。
证明方式:考虑 d d d和 n \sqrt n n的大小关系,就可以找到取值方案。
数论分块
先谈一下整除分块(数论分块,名字不一样而已…),它存在的意义就是:解决某些神奇出题人的刁难,其作用:在 O ( n ) O(\sqrt n) O(n)时间内解决 ∑ i = 1 n ⌊ n i ⌋ \sum_{i=1}^n\lfloor \frac{n}{i} \rfloor ∑i=1n⌊in⌋的问题。
首先我们可以思考一下,对于 ⌊ n i ⌋ \lfloor \frac{n}{i} \rfloor ⌊in⌋,他的一些值有什么规律存在,那么很容易发现:在一些情况, ⌊ n i ⌋ \lfloor \frac{n}{i} \rfloor