莫比乌斯反演 做题记录

来自Peterwuyihong 的题单。

前置知识

前置芝士1 数论分块

UVA11526 H(n)

P2261 [CQOI2007]余数求和

P2260 [清华集训2012]模积和

  • 其中有一个式子需要注意一下:
    \[\sum_{i=1}^n\sum_{j=1}^m\left\lfloor\dfrac{n}{i}\right\rfloor\left\lfloor\dfrac{m}{i}\right\rfloor=\left(\sum_{i=1}^n\left\lfloor\dfrac{n}{i}\right\rfloor\right)\times\left(\sum_{j=1}^m\left\lfloor\dfrac{m}{i}\right\rfloor\right) \]

P3935 Calculating

  • 最重要的一部分就是计算 \(1\)\(n\) 内每个数的约数个数之和,这样不是很好做,考虑枚举约束。
    \[\sum_{i=1}^{n}\sigma_0(i)=\sum_{d=1}^{n}\left\lfloor\dfrac{n}{d}\right\rfloor \]

前置芝士2 线性筛

P2158 [SDOI2008]仪仗队

SP526 DIV - Divisors

P4626 一道水题 II

SP22461 SMALL - Smallest Number

CF1017F The Neutral Zone论如何选择筛法

以及你的算法优化技巧与数学能力

P6810 「MCOI-02」Convex Hull 凸包

P5495 Dirichlet 前缀和

P6788 「EZEC-3」四月樱花

莫比乌斯反演

就是把一个看起来只能暴力算的柿子化成一个可以一下子算出来或者数论分块可以算出来的东西

以下都默认 \(n\le m\)

形式1

\[\begin{aligned} \sum_{i=1}^n\sum_{j=1}^m[\gcd(i,j)=1]&=\sum_{i=1}^n\sum_{j=1}^m\sum_{x|i}\sum_{x|j}\mu(x)\\ &=\sum_{x=1}^n\mu(x)\sum_{i=1}^n\sum_{j=1}^m[x|i~\texttt{and}~x|j]\\ &=\sum_{x=1}^n\mu(x)\left\lfloor {n\over x}\right\rfloor\left\lfloor {m\over x}\right\rfloor \end{aligned} \]

数论分块即可 \(O(n)\) 预处理, \(O(\sqrt n)\) 单次询问。

形式2

\[\begin{aligned} \sum_{i=1}^n\sum_{j=1}^m\gcd(i,j)&=\sum_{i=1}^n\sum_{j=1}^m\sum_{x|i}\sum_{x|j}\varphi(x)\\ &=\sum_{x=1}^n\varphi(x)\sum_{i=1}^n\sum_{j=1}^m[x|i~\texttt{and}~x|j]\\ &=\sum_{x=1}^n\varphi(x)\left\lfloor {n\over x}\right\rfloor\left\lfloor {m\over x}\right\rfloor \end{aligned} \]

数论分块即可 \(O(n)\) 预处理, \(O(\sqrt n)\) 单次询问。

形式3

\[\begin{aligned} \sum_{i=1}^n\sum_{j=1}^mf(\gcd(i,j))&=\sum_{d=1}^nf(d)\sum_{i=1}^n\sum_{j=1}^m[\gcd(i,j)=d]\\ &=\sum_{d=1}^nf(d)\sum_{i=1}^{\lfloor{n\over d}\rfloor}\sum_{j=1}^{\lfloor{m\over d}\rfloor}[\gcd(i,j)=1]\\ &=\sum_{d=1}^nf(d)\sum_{k=1}^{\lfloor{n\over d}\rfloor}\mu(k)\left\lfloor {n\over dk}\right\rfloor\left\lfloor {m\over dk}\right\rfloor\text{,然后令}dk=T\\ &=\sum_{T=1}^n\left\lfloor {n\over T}\right\rfloor\left\lfloor {m\over T}\right\rfloor\sum_{d|T}f(d)\mu\left({T\over d}\right) \end{aligned} \]

数论分块即可 \(O(n)\) 预处理, \(O(\sqrt n)\)单次询问。

莫比乌斯反演形式千千万,要多做才能做出感觉来。

莫比乌斯反演优化多次/单次询问

疯狂 LCM

LCMSUM - LCM Sum(2倍经验)

loj LCMSUM(3倍经验)

P2398 GCD SUM

P1390 公约数的和(2倍经验)

SP21615 NAJPWG - Playing with GCD

SP3871 GCDEX - GCD Extreme

AT5310 [ABC162E] Sum of gcd of Tuples (Hard)(难度绿???我大不服

莫反加整除分块

P3455 [POI2007]ZAP-Queries

P2522 [HAOI2011]Problem b

SP26017 GCDMAT - GCD OF MATRIX

SP26045 GCDMAT2 - GCD OF MATRIX (hard)(卡常,慎入!!

VLATTICE - Visible Lattice Points

杜教筛

\(\sum_{i=1}^nf(i),f\) 为积形函数

主要思路就是构造一个积形函数\(g\),使得它本身前缀和与

\[\sum_{i=1}^n\sum_{d|i}f(d)g\left(\frac{i}{d}\right) \]

好算一点

那么我们有

\[\sum_{i=1}^n\sum_{d|i}f(d)g\left(\frac{i}{d}\right)=\sum_{d=1}^ng(d)\sum_{k=1}^{\lfloor\frac{n}{d}\rfloor}f(k)\\ g(1)\sum_{k=1}^nf(k)=\sum_{i=1}^n\sum_{d|i}f(d)g\left(\frac{i}{d}\right)-\sum_{d=2}^ng(d)\sum_{k=1}^{\lfloor\frac{n}{d}\rfloor}f(k) \]

递归计算即可,当然可以预处理,具体见wiki写的

Min25筛

学会这个就能搞定一切积形函数前缀和了

题单放不下了我就放在这里

P1835 素数密度(请小题大做)

P5493 质数前缀统计(min25前置芝士)

P5325 【模板】Min_25筛(板子)

SP20173 DIVCNT2 - Counting Divisors (square)(1倍经验)

SP20174 DIVCNT3 - Counting Divisors (cube)(2倍经验)

SP34096 DIVCNTK - Counting Divisors (general)(3倍经验)

SP19975 APS2 - Amazing Prime Sequence (hard)(有技巧的min25,需要熟练了解其精髓)

SP22549 DIVFACT4 - Divisors of factorial (extreme)(用min25处理中间问题)

欧拉计划分区(可能要FQ

中文翻译

欧拉计划388

欧拉计划625

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/318040.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Three Bags CodeForces - 1467C

题意: 三堆石子,你可以取两堆石子各一个石头a,b。然后消掉a,使得bb-a再放入b的那一堆。这样操作直到只剩下一个石子,求该石子价值最大。 题解: 构造题 可以构造出两者情况: 其中两堆都是正的&#xff0…

任正非公开信:投入 20 亿美元全面提升华为软件质量

昨天,华为心声社区发布了来自任正非的公开信《全面提升软件工程能力与实践,打造可信的高质量产品》,信中强调从基础代码做起,全面提升华为软件工程能力和实践,其中提到一些重要举措,包括编码质量、架构设计…

YBTOJ洛谷P2223:软件开发(费用流)

文章目录题目描述解析代码题目描述 某软件公司正在规划一项nnn天的软件开发计划,根据开发计划第iii天需要nin_ini​个软件开发人员,为了提高软件开发人员的效率,公司给软件人员提供了很多的服务,其中一项服务就是要为每个开发人员…

高维前缀和

高维前缀和 主要内容 昨天(\(\texttt{2022.2.28}\))打 ARC 的 D 题时,恍然发现我不会高维前缀和,匆匆来学一下。 比如二维前缀和 \(s_{i,j}\) 表示在一个二维平面上从 \((1,1)\) 到 \((i,j)\) 的所有点的权值之和,我们定义高维前缀和 \(s_{p_…

P3577-[POI2014]TUR-Tourism【状压dp】

正题 题目链接:https://www.luogu.com.cn/problem/P3577 题目大意 给出nnn个点mmm条边的一张图,每个点有费用CiC_iCi​,求选出费用和最小的点使得每个点都至少有一个相邻的点(或自己)被选择。保证图上不存在超过101010个点的简单…

[指数型生成函数专练]chocolate,红色病毒问题,排列组合,字串数

文章目录T1:chocolate题目题解codeT2:“红色病毒”问题题目题解codeT3:排列组合题目题解codeT4:字串数题解codeT1:chocolate 题目 已帮大家翻译了,不要去UVA或者luogu上面交,卡精度&#xff0…

微服务之:从零搭建ocelot网关和consul集群

介绍微服务中有关键的几项技术,其中网关和服务服务发现,服务注册相辅相成。首先解释几个本次教程中需要的术语网关 Gateway(API GW / API 网关),顾名思义,是企业 IT 在系统边界上提供给外部访问内部接口服务…

一起开心寒假训练总复习

文章目录畅通工程题意:题解:代码:小希的迷宫题解:代码:Express Mail Taking题意:题解:代码:Reports题意:题解:代码:放苹果题意:题解&a…

YBTOJ:放置棋子(费用流)

文章目录题目描述解析代码题目描述 有一个n*n的棋盘,可以在上面放棋子。 有些格子不能放棋子,有些格子必须放棋子,剩下的格子随意。 要求放好棋子之后满足如下两条要求: 第 i 行和第 i 列的棋子数目必须一样多。 第 i 行的棋子数…

Prufer 序列

Prufer 序列 定义与建立 Prufer 序列可以将一个带标号 \(n\) 个结点的树用 \([1,n]\) 中的 \(n-2\) 个整数表示。一个无向带标号生成树与数列之间的双射。 对于一棵树,每次我们选择它编号最小的叶子结点,删除它并记录下与它相连的节点的编号,…

CF476D-Dreamoon and Sets【结论】

正题 题目链接:https://www.luogu.com.cn/problem/CF476D 题目大意 求nnn个四元组使得 所有四元组内没有重复的数。四元组内的数字两两之间gcdgcdgcd都为kkk。 要求使得最大的数字最小 1≤n≤10000,1≤k≤1001\leq n\leq 10000,1\leq k\leq 1001≤n≤10000,1≤k≤100 解题思…

使用 WRK 压力测试工具对 ASP.NET Core 的接口进行压力测试

0. 简要介绍WRK 是一款轻量且易用的 HTTP 压力测试工具,通过该工具我们可以方便地对我们所开发的 WebAPI 项目进行压力测试,并且针对测试的情况返回结果。PS:Wrk 并不能针对测试的结果生成动态的图表,如果有这种需要,可…

Codeforces Round #696

Codeforces Round #696 文章目录CF1474A Puzzle From the Future题意:题解:代码:CF1474B Different Divisors题意:题解:代码:CF1474C Array Destruction题意:题解:代码:C…

YBTOJ洛谷P4068:数字配对(网络流)

文章目录题目描述解析代码题目描述 有n种数字,第 i 种数字是 ai,有 bi个,权值是 ci。 若两个数字 ai,aj 满足, ai 是 aj 的倍数,且 ai/aj 是一个质数,那么这两个数字可以配对,并获得 ci*cj 的…

Comet OJ(Contest #14)-飞翔的小鸟【tarjan】

正题 题目链接:https://www.cometoj.com/contest/73/problem/E?problem_id4124 题目大意 给出nnn个点mmm条边的一张有向图,边有边权,qqq次询问从点111走到点xxx的所有路径(可以重复经过任何点包括点xxx)中极差最大是多少。 1≤…

[TJOI2019]唱、跳、rap和篮球(指数型生成函数+NTT+卷积)

文章目录题目题解code1(NTT)code2(EGF卷积)题目 大中锋的学院要组织学生参观博物馆,要求学生们在博物馆中排成一队进行参观。他的同学可以分为四类:一部分最喜欢唱、一部分最喜欢跳、一部分最喜欢rap&…

数数题(计数类 DP)做题记录

数数题(计数类 DP)做题记录 CF1657E Star MST 我们称张无向完全图是美丽的当且仅当:所有和 \(1\) 相连的边的边权之和等于这张完全图的最小生成树的边权之和。 完全图点数为 \(n\),边权 \(\in[1,k]\),\(1\le n,k\le 250\)。 发现所有和 \(1\)…

Sum of Paths CodeForces - 1467D

Sum of Paths CodeForces - 1467D Tagscombinatorics dp math *2200 题意: 定义一条好的路径,当且仅当从任意点出发之后恰好经过了 k 次移动,定义这条路径的权值为经过点权值的总和(可重),进行 q 次修改,每次将ak 改…

[矩阵乘法/快速幂专题]Arc of Dream,Recursive sequence,233 Matrix,Training little cats

矩阵快速幂习题复习矩阵乘法及快速幂模板乘法模板快速幂模板T1:Arc of Dream题目题解codeT2:Recursive sequence题目题解codeT3:233 Matrix题目题解codeT4:Training little cats题目题解code做题的时候后悔没有保存过模板&#xf…

P3639-[APIO2013]道路费用【最小生成树】

正题 题目链接:https://www.luogu.com.cn/problem/P3639 题目大意 给出nnn个点mmm条有边权的无向图,然后再给出kkk条边权未定义的边,然后每个点有一个人数pip_ipi​。 现在要你给未确定的边权的边确定边权然后选出图的一棵最小生成树,之后…