「SDOI2015」约数个数和

这个题关键就在于知不知道这个 dij=∑x∣i∑y∣j(gcd(x,y)==1)d_{ij}=\sum_{x|i}\sum_{y|j}(gcd(x,y)==1)dij​=∑x∣i​∑y∣j​(gcd(x,y)==1) 结论 以及 gcd==1gcd==1gcd==1 怎么用莫比乌斯函数表示的 然后推式子就很愉快了
ans=∑i=1n∑j=1mdij=∑i=1n∑j=1m∑x∣i∑y∣j(gcd(x,y)==1)=∑i=1n∑j=1m∑x∣i∑y∣j∑d∣gcd(x,y)ud=∑d=1min(n,m)ud∑d∣x∑d∣y∑i∣x∑j∣y=∑d=1min(n,m)ud∑d∣x∑d∣y⌊nx⌋⌊my⌋g(k)=∑i=1k⌊ki⌋ans=∑d=1min(n,m)ud×g(⌊nd⌋)×g(⌊md⌋)\begin{aligned} ans &=\sum_{i=1}^{n}\sum_{j=1}^{m}d_{ij}\\ &=\sum_{i=1}^{n}\sum_{j=1}^{m}\sum_{x|i}\sum_{y|j}(gcd(x,y)==1)\\ &=\sum_{i=1}^{n}\sum_{j=1}^{m}\sum_{x|i}\sum_{y|j}\sum_{d|gcd(x,y)}u_d\\ &=\sum_{d=1}^{min(n,m)}u_d\sum_{d|x}\sum_{d|y}\sum_{i|x}\sum_{j|y}\\ &=\sum_{d=1}^{min(n,m)}u_d\sum_{d|x}\sum_{d|y} \lfloor \cfrac{n}{x} \rfloor\lfloor \cfrac{m}{y } \rfloor \\ \end{aligned} \\ g(k)=\sum_{i=1}^{k}\lfloor\cfrac{k}{i}\rfloor \\ ans=\sum_{d=1}^{min(n,m)}u_d\times g(\lfloor\cfrac{n}{d}\rfloor )\times g(\lfloor\cfrac{m}{d}\rfloor ) ans​=i=1∑n​j=1∑m​dij​=i=1∑n​j=1∑m​x∣i∑​y∣j∑​(gcd(x,y)==1)=i=1∑n​j=1∑m​x∣i∑​y∣j∑​d∣gcd(x,y)∑​ud​=d=1∑min(n,m)​ud​d∣x∑​d∣y∑​i∣x∑​j∣y∑​=d=1∑min(n,m)​ud​d∣x∑​d∣y∑​⌊xn​⌋⌊ym​⌋​g(k)=i=1∑k​⌊ik​⌋ans=d=1∑min(n,m)​ud​×g(⌊dn​⌋)×g(⌊dm​⌋)
g(x)g(x)g(x) 函数用整出分块预处理 然后就是套路了

「SDOI2017」数字表格

ans=∏i=1n∏j=1mfib[gcd(i,j)]=∏t=1nfib[t]∑i=1n∑j=1m[gcd(i,j)==1]=∏t=1nfib[t]∑t∣dnu(dt)⌊nd⌋⌊md⌋=∏t=1n∏t∣dfib[t]u(dt)⌊nd⌋⌊md⌋=∏d=1n∏t∣dfib[t]u(dt)⌊nd⌋⌊md⌋=∏d=1n[∏t∣dfib[t]u(dt)]⌊nd⌋⌊md⌋\begin{aligned} ans &=\prod_{i=1}^{n} \prod_{j=1}^{m}fib[gcd(i,j)] \\ &=\prod_{t=1}^{n}fib[t]^{\sum_{i=1}^{n} \sum_{j=1}^{m}[gcd(i,j)==1]} \\ &=\prod_{t=1}^{n} fib[t]^{\sum_{t|d}^{n} u(\frac{d}{t}) \lfloor\frac{n}{d}\rfloor \lfloor\frac{m}{d}\rfloor } \\ &=\prod_{t=1}^{n} \prod_{t|d} fib[t]^{u(\frac{d}{t}) \lfloor\frac{n}{d}\rfloor \lfloor\frac{m}{d}\rfloor } \\ &=\prod_{d=1}^{n} \prod_{t|d} fib[t]^{u(\frac{d}{t})\lfloor\frac{n}{d}\rfloor \lfloor\frac{m}{d}\rfloor } \\ &=\prod_{d=1}^{n} {[\prod_{t|d} fib[t]^{u(\frac{d}{t})}]}^{\lfloor\frac{n}{d}\rfloor \lfloor\frac{m}{d}\rfloor } \end{aligned} \\ ans​=i=1∏n​j=1∏m​fib[gcd(i,j)]=t=1∏n​fib[t]∑i=1n​∑j=1m​[gcd(i,j)==1]=t=1∏n​fib[t]∑t∣dn​u(td​)⌊dn​⌋⌊dm​⌋=t=1∏n​t∣d∏​fib[t]u(td​)⌊dn​⌋⌊dm​⌋=d=1∏n​t∣d∏​fib[t]u(td​)⌊dn​⌋⌊dm​⌋=d=1∏n​[t∣d∏​fib[t]u(td​)]⌊dn​⌋⌊dm​⌋​

这道题的关键是是第三步到第四步 推式子的过程中交换枚举顺序很重要

然后反演里面整除分块的式子常用但不限于四则运算

时间 O(Tn+nlog⁡n)O(T\sqrt{n}+n\log n)O(Tn​+nlogn)

嗷嗷对了 还有对函数 g(d)=∏t∣dfib[t]u(dt)g(d)=\prod_{t|d} fib[t]^{u(\frac{d}{t})}g(d)=∏t∣d​fib[t]u(td​) 的预处理可以用埃式筛来做

「BZOJ2693」jzptab

ans=∑i=1n∑j=1mlcm(i,j)=∑i=1n∑j=1mi×jgcd(i,j)=∑t=1nt∑i=1it≤n∑j=1jt≤mi×j×(gcd(i,j)==1)=∑t=1nt∑i=1it≤n∑j=1jt≤mi×j×∑d∣id∣jud=∑d=1nud×d2∑td≤nt∑idt≤n∑jdt≤mi×j\begin{aligned} ans&=\sum_{i=1}^n \sum_{j=1}^m lcm(i,j) \\ &=\sum_{i=1}^n \sum_{j=1}^m\cfrac{i\times j}{gcd(i,j)} \\ &=\sum_{t=1}^n t\sum_{i=1}^{it\leq n}\sum_{j=1}^{jt\leq m}i\times j \times (gcd(i,j)==1) \\ &=\sum_{t=1}^n t\sum_{i=1}^{it\leq n}\sum_{j=1}^{jt\leq m}i\times j \times \sum_{d|i\ d|j}u_d \\ &=\sum_{d=1}^{n}u_d \times d^2 \sum_{td \le n}t\sum_{idt\le n}^{}\sum_{jdt\le m}^{}i\times j \\ \end{aligned} ans​=i=1∑n​j=1∑m​lcm(i,j)=i=1∑n​j=1∑m​gcd(i,j)i×j​=t=1∑n​ti=1∑it≤n​j=1∑jt≤m​i×j×(gcd(i,j)==1)=t=1∑n​ti=1∑it≤n​j=1∑jt≤m​i×j×d∣i d∣j∑​ud​=d=1∑n​ud​×d2td≤n∑​tidt≤n∑​jdt≤m∑​i×j​

令 x=⌊nd⌋,y=⌊md⌋,sum(a,b)=∑i=1a∑j=1bi×jx=\lfloor \cfrac{n}{d} \rfloor,y=\lfloor \cfrac{m}{d} \rfloor,sum(a,b)=\sum_{i=1}^a\sum_{j=1}^bi\times jx=⌊dn​⌋,y=⌊dm​⌋,sum(a,b)=∑i=1a​∑j=1b​i×j
ans=∑d=1nud×d2∑t=1xt∑it≤x∑jt≤yi×j=∑d=1nud×d2∑t=1xt×sum(⌊xt⌋,⌊yt⌋)=∑d=1n∑t=1min(x,y)ud×d2×t×sum(⌊ndt⌋,⌊mdt⌋)①=∑t=1n∑dt≤nud×d2×t×sum(⌊ndt⌋,⌊mdt⌋)=∑dt≤nsum(⌊ndt⌋,⌊mdt⌋)∑t∣dtud×d2×t②\begin{aligned} ans&=\sum_{d=1}^{n}u_d \times d^2 \sum_{t=1}^xt\sum_{it\le x}^{}\sum_{jt\le y}^{}i\times j \\ &=\sum_{d=1}^{n}u_d \times d^2 \sum_{t=1}^xt\times sum(\lfloor\cfrac{x}{t}\rfloor,\lfloor\cfrac{y}{t}\rfloor) \\ &=\sum_{d=1}^{n}\sum_{t=1}^{min(x,y)} u_d \times d^2\times t\times sum(\lfloor\cfrac{n} {dt}\rfloor,\lfloor\cfrac{m}{dt}\rfloor)\ \ \ \ \ \ \ \ ① \\ &=\sum_{t=1}^{n}\sum_{dt\le n}^{} u_d \times d^2\times t\times sum(\lfloor\cfrac{n} {dt}\rfloor,\lfloor\cfrac{m}{dt}\rfloor) \\ &=\sum_{dt\le n}sum(\lfloor\cfrac{n} {dt}\rfloor,\lfloor\cfrac{m}{dt}\rfloor)\sum_{t|dt}^{} u_d \times d^2\times t\ \ \ \ \ \ \ \ ② \end{aligned} ans​=d=1∑n​ud​×d2t=1∑x​tit≤x∑​jt≤y∑​i×j=d=1∑n​ud​×d2t=1∑x​t×sum(⌊tx​⌋,⌊ty​⌋)=d=1∑n​t=1∑min(x,y)​ud​×d2×t×sum(⌊dtn​⌋,⌊dtm​⌋)        ①=t=1∑n​dt≤n∑​ud​×d2×t×sum(⌊dtn​⌋,⌊dtm​⌋)=dt≤n∑​sum(⌊dtn​⌋,⌊dtm​⌋)t∣dt∑​ud​×d2×t        ②​
最后化成可以整除分块的式子的时候 如果有函数不能直接求或者预处理 要把该函数提到最前面 如这道题 ① -> ②这个过程

数字表格那道题同样也用了这个技巧

「SDOI2014」数表

ans=∑i=1n∑j=1mg(gcd(i,j))=∑t=1ng(t)∑i=1it≤n∑j=1jt≤m(gcd(i,j)==1)=∑t=1ng(t)∑i=1⌊nt⌋ui⌊nit⌋⌊mit⌋=∑t=1n∑i=1⌊nt⌋g(t)ui⌊nit⌋⌊mit⌋=∑it=1n∑t∣itg(t)ui⌊nit⌋⌊mit⌋=∑it=1n⌊nit⌋⌊mit⌋∑t∣itg(t)uitt\begin{aligned} ans&=\sum_{i=1}^{n} \sum_{j=1}^{m} g(gcd(i,j)) \\ &=\sum_{t=1}^{n}g(t) \sum_{i=1}^{it \le n} \sum_{j=1}^{jt\le m}(gcd(i,j)==1) \\ &=\sum_{t=1}^{n}g(t) \sum_{i=1}^{ \lfloor \frac{n}{t} \rfloor }u_i \lfloor \frac{n}{it} \rfloor \lfloor \frac{m}{it} \rfloor \\ &=\sum_{t=1}^{n} \sum_{i=1}^{ \lfloor \frac{n}{t} \rfloor }g(t)u_i \lfloor \frac{n}{it} \rfloor \lfloor \frac{m}{it} \rfloor \\ &=\sum_{it=1}^{n} \sum_{t|it}^{} g(t)u_i \lfloor \frac{n}{it} \rfloor \lfloor \frac{m}{it} \rfloor \\ &=\sum_{it=1}^{n} \lfloor \frac{n}{it} \rfloor \lfloor \frac{m}{it} \rfloor \sum_{t|it}^{} g(t)u_{\frac{it}{t}} \end{aligned} ans​=i=1∑n​j=1∑m​g(gcd(i,j))=t=1∑n​g(t)i=1∑it≤n​j=1∑jt≤m​(gcd(i,j)==1)=t=1∑n​g(t)i=1∑⌊tn​⌋​ui​⌊itn​⌋⌊itm​⌋=t=1∑n​i=1∑⌊tn​⌋​g(t)ui​⌊itn​⌋⌊itm​⌋=it=1∑n​t∣it∑​g(t)ui​⌊itn​⌋⌊itm​⌋=it=1∑n​⌊itn​⌋⌊itm​⌋t∣it∑​g(t)utit​​​

离线有点麻烦 常数有点卡(指卡我的常数

莫比乌斯反演专题题解相关推荐

  1. 莫比乌斯反演专题学习笔记

    莫比乌斯反演专题学习笔记 本文记录一些和莫反有关的内容的笔记 可能存在诸多谬误,阅读时请谨慎分析 若发现文中有谬误,如您愿意,恳请您向我指出,不胜感激! 为什么要学莫比乌斯反演? 解决一类与狄利克雷卷 ...

  2. 【Project Euler】530 GCD of Divisors 莫比乌斯反演

    [题目]GCD of Divisors [题意]给定f(n)=Σd|n gcd(d,n/d)的前缀和F(n),n=10^15. [算法]莫比乌斯反演 [题解]参考:任之洲数论函数.pdf 这个范围显然 ...

  3. 专题·莫比乌斯函数与欧拉函数【including 整除分块,积性函数,狄利克雷卷积,欧拉函数,莫比乌斯函数,莫比乌斯反演

    初见安~又是好久没写博客了--加上CSP才炸了一波. 目录 一.整除分块 题解 二.积性函数 三.狄利克雷卷积 四.欧拉函数 五.莫比乌斯函数(mu) 六.莫比乌斯反演 一.整除分块 看个例题:洛谷P ...

  4. 【数学专题】莫比乌斯反演与积性函数

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的模板整合计划 目录 莫比乌斯反演 AcWing 2702. problem b AcWing 1358. 约数个数和(莫 ...

  5. 【专题】莫比乌斯反演

    问题引入: 给定整数 N 和 M.求满足  且  为质数的点对  的个数. 数据范围: 接下来会见到以下内容: 莫比乌斯函数 莫比乌斯函数的线性筛 迪利克雷卷积介绍 莫比乌斯反演 整除分块 杜教筛介绍 ...

  6. 【bzoj2694】Lcm 莫比乌斯反演+线性筛

    题目描述 求$\sum\limits_{i=1}^n\sum\limits_{j=1}^m|\mu(gcd(i,j))|lcm(i,j)$,即$gcd(i,j)$不存在平方因子的$lcm(i,j)$之 ...

  7. P2257 YY的GCD (莫比乌斯反演)

    [题目链接] https://www.luogu.org/problemnew/show/P2257 // luogu-judger-enable-o2 /* -------------------- ...

  8. 【bzoj4176】Lucas的数论 莫比乌斯反演+杜教筛

    题目描述 去年的Lucas非常喜欢数论题,但是一年以后的Lucas却不那么喜欢了. 在整理以前的试题时,发现了这样一道题目"求Sigma(f(i)),其中1<=i<=N" ...

  9. 【XSY2719】prime 莫比乌斯反演

    题目描述 设\(f(i)\)为\(i\)的不同的质因子个数,求\(\sum_{i=1}^n2^{f(i)}\) \(n\leq{10}^{12}\) 题解 考虑\(2^{f(i)}\)的意义:有\(f ...

最新文章

  1. oracle判断值是否为0的高数,SQLServer和Oracle的常用函数对比
  2. AutoLayout全解
  3. sublime配置python3_Sublime Text 3 Python3环境配置
  4. SAP Cloud for Customer销售订单External Note的建模细节
  5. Origin绘制双Y或双X折线图(不同坐标)
  6. 七牛2015结姻大典,约吗?
  7. paip.c++ qt C:\iwmake\build_mingw_opensource _Unwind_Resume的问题
  8. 课程设计—通讯录管理系统
  9. COMSOL指南:COMSOL案例库文件夹的寻找
  10. 使用Clipboard.js轻松实现“复制到剪贴板”
  11. 如何用MATLAB编写FIR维纳滤波器,Fir维纳滤波器的Matlab仿真
  12. 北信源桌面终端管理系统部署与问题
  13. 中国城市轨道交通与设备行业布局策略规划及十四五建设展望报告2021-2027年版
  14. 植物大战僵尸用户存档修改(单机版)
  15. 《海边的卡夫卡》读后感
  16. SIM7600使用TCP连接服务器
  17. Redis - increment 递增方法 | 处理防重复和并发问题
  18. 华为服务器维护客服,服务器客服
  19. OkHttp3源码分析二 拦截器 上
  20. 背负着24-70之名 佳能新老镜皇横向对比(MTF对比说明)

热门文章

  1. 新款 iMac2021上手体验,这次你心动了吗
  2. python List中删除特定元素
  3. 10.高光反射Blinn
  4. Visual Studio 2022调节字体大小
  5. JavaEE 企业级分布式高级架构师(十七)ElasticSearch全文检索(1)
  6. python 提示按任意键退出_详解Python实现按任意键继续/退出的功能 python请按任意键继续 什么意思...
  7. 【Unity3D插件】DoTween插件的简单介绍及示例代码
  8. excel学习-填充空白单元格
  9. 如何清理网易云无损flac格式留下的注释163key(Don't Modify):.........等牛皮癣?
  10. 网易考拉海购Dubbok框架优化详解(学习笔记)