T1.P3327

知识点:莫比乌斯反演,数论分块

我们知道 \(d(ij) = \sum_{x | i}\sum_{y | j}[\gcd(x,y) == 1]\)。

所以我们就要求 \(\sum^n_{i = 1}\sum^m_{j = 1}\sum_{x | i}\sum_{y | j}[\gcd(x,y) == 1]\)。

即为 \(\sum^n_{i = 1}\sum^m_{j = 1}\lfloor \dfrac{n}{i} \rfloor \times \lfloor \dfrac{m}{j} \rfloor [\gcd(i,j) == 1]\)。

然后我们开始反演。

\[f(x) = \sum^n_{i = 1}\sum^m_{j = 1}\lfloor \dfrac{n}{i} \rfloor \times \lfloor \dfrac{m}{j} \rfloor [\gcd(i,j) == x]
\]
\[g(x) = \sum_{x|d} f(d) = \sum^n_{i = 1}\sum^m_{j = 1}\lfloor \dfrac{n}{i} \rfloor \times \lfloor \dfrac{m}{j} \rfloor [x | \gcd(i,j)]
\]

然后我们将 \(x\) 提出可得 \(g(x) = \sum^{\frac{n}{x}}_{i = 1}\sum^{\frac{m}{x}}_{j = 1}\lfloor \dfrac{n}{i \times x} \rfloor \times \lfloor \dfrac{m}{j \times x} \rfloor\)。

然后我们就考虑如何得到 \(f(1)\)。

由于莫反我们知道 \(f(x) = \sum_{i = 1}^n \mu(i) \times g(i)\)。

然后我们来考虑怎么计算 \(g(x)\)。我们可以先计算 \(s(i) = \sum^{x}_{i = 1} \lfloor \dfrac{x}{i} \rfloor\)。

然后就可以 \(O(1)\) 求出答案了。总复杂度为 \(O(t \sqrt n)\)。

T2.P5518 [MtOI2019] 幽灵乐团 / 莫比乌斯反演基础练习题

非常 nb 的题目,由于太难打 latex 了,我就直接写了下来。

有几张横着的,凑合着看吧

Math Record的更多相关文章

  1. Python基础之【第一篇】

    Python简介: python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语 ...

  2. ORA-02292: integrity constraint (xxxx) violated - child record found

    在更新表的主键字段或DELETE数据时,如果遇到ORA-02292: integrity constraint (xxxx) violated - child record found 这个是因为主外 ...

  3. [Immutable,js] Immutable.Record() as data models

    The Immutable.js Record() allows you to model your immutable data much like you would model data wit ...

  4. SparkStreaming “Could not read data from write ahead log record” 报错分析解决

    # if open wal org.apache.spark.SparkException: Could not read data from write ahead log record FileB ...

  5. Java SE 16 record 类型说明与使用

    Java SE 16 record 类型说明与使用 作者:Grey 原文地址: 博客园:Java SE 16 record 类型说明与使用 CSDN:Java SE 16 record 类型说明与使用 ...

  6. JavaScript中Math对象的方法介绍

    1.比较最值方法 比较最值有两种方法,max() 和 min() 方法. 1.1 max() 方法,比较一组数值中的最大值,返回最大值. var maxnum = Math.max(12,6,43,5 ...

  7. salesforce 零基础学习(六十二)获取sObject中类型为Picklist的field values(含record type)

    本篇引用以下三个链接: http://www.tgerm.com/2012/01/recordtype-specific-picklist-values.html?m=1 https://github ...

  8. JavaScript Math和Number对象

    目录 1. Math 对象:数学对象,提供对数据的数学计算.如:获取绝对值.向上取整等.无构造函数,无法被初始化,只提供静态属性和方法. 2. Number 对象 :Js中提供数字的对象.包含整数.浮 ...

  9. Chrome V8引擎系列随笔 (1):Math.Random()函数概览

    先让大家来看一幅图,这幅图是V8引擎4.7版本和4.9版本Math.Random()函数的值的分布图,我可以这么理解 .从下图中,也许你会认为这是个二维码?其实这幅图告诉我们一个道理,第二张图的点的分 ...

  10. Math.random()

    Math.random() 日期时间函数(需要用变量调用):var b = new Date(); //获取当前时间b.getTime() //获取时间戳b.getFullYear() //获取年份b ...

随机推荐

  1. 力扣387(java)-字符串中的第一个唯一字符(简单)

    题目: 给定一个字符串 s ,找到 它的第一个不重复的字符,并返回它的索引 .如果不存在,则返回 -1 . 示例 1: 输入: s = "leetcode"输出: 0示例 2: 输 ...

  2. PeLK:101 x 101 的超大卷积网络,同参数量下反超 ViT | CVPR 2024

    最近,有一些大型内核卷积网络的研究,但考虑到卷积的平方复杂度,扩大内核会带来大量的参数,继而引发严重的优化问题.受人类视觉的启发,论文提出了外围卷积,通过参数共享将卷积的复杂性从 \(O(K^{2}) ...

  3. 任务不再等待!玩转DataWorks资源组

    引言 DataWorks提供了三种资源组的能力:独享资源组.自定义资源组和默认资源组,很多开发者在使用资源组时经常会碰到各类情况,到时候任务运行失败或者延迟,例如:1. 正在使用默认资源组,任务经常要 ...

  4. 【详谈 Delta Lake 】系列技术专题 之 特性(Features)

    简介: 本文翻译自大数据技术公司 Databricks 针对数据湖 Delta Lake 的系列技术文章.众所周知,Databricks 主导着开源大数据社区 Apache Spark.Delta L ...

  5. dotnet 启动进程传入不存在的文件夹作为工作目录行为变更

    本文记录在 dotnet 下,启动进程,传入不存在的文件夹作为进程的工作目录,分别在 .NET Framework 和 .NET Core 的行为 在 dotnet 6 下,可以使用 ProcessS ...

  6. 009_原理图中电气互连,Net alias,分页符,总线

    009_原理图中电气互连,Net alias,分页符,总线 1.电气互连,就是画线. 2.端口名,适用同一页相连的端口. 3.分页符off page connector,适用于不同页的端口连接. 4. ...

  7. 【git】建立分支

    1.git clone现有的项目 git clone git@github.com:zhangshengdong/Zflask.git 2.建立关联 git remote add origin git ...

  8. 02 Xpath Helper介绍

    目录 参考文档 下载地址 安装 使用 参考文档 xpath helper https://www.cnblogs.com/ChevisZhang/p/12869582.html http://c.bi ...

  9. CSS样式第四篇

    ​针对现在网站的图片过大问题,可以用相应的工具进行压缩,并且可对图片进行切割处理. 1.如果一个页面的图片过大,可以对其切割,代码<img src="1.jpg">&l ...

  10. 几行命令用minikube快速搭建可测试的kubernetes单节点环境

    几行命令用minikube快速搭建可测试的kubernetes单节点环境 需要docker环境,https://www.cnblogs.com/xiaofei12/p/17544579.html,网速 ...