洛谷P3327 [SDOI2015]约数个数和

洛谷P4619 [SDOI2018]旧试题

要用到这个性质,而且网上几乎没有能看的证明,所以特别提出来整理一下。

\[
d(AB) = \sum_{x|A} \sum_{y|B} [\gcd (x,y) = 1]
\]

(看上去比较不可思议对吧)

右侧的枚举,一部分因子算多了(比如当 \(\gcd(x,y)=1\) 且额外有 \(x|B,y|A\) 时,可以枚举出 \(x*y = y*x\) ),一部分因子又没有算(比如当 \(\gcd(A,B) \not= 1\) 时的 \(A*B\) )。但是算多和算少之间达成了诡异的平衡。(并没有找出这种平衡如何证明,下面的证明是从另一个角度得来的)

首先考虑 \(A,B\) 互质的情况。显然此时右式中的 \([\gcd (x,y) = 1]\) 恒成立。而左式可以通过积性函数的性质拆开。两侧都为 \(d(A)*d(B)\) ,成立。(其实并没有这样分互质不互质讨论的必要,但是这样想能让我们的思路更加清晰)

那么考虑 \(\gcd(A,B) \not= 1\) 时的情况。不妨先证明 \(A = p^a, B = p^b\) ( \(p\) 是素数)时等式成立。

这部分的证明是容易的。根据约数个数的定义,左式显然为 \(a+b+1\)。对于右式,设 \(x = p^c, y= p^d\) ,若要使 \([\gcd (x,y) = 1]\) 成立, \(c,d\) 中至少有一个为 \(0\) 。那么当 \(b=0\)时,\(c \in [0, a]\);当 \(a=0\) 时, \(c \in [0,b]\)。排除重复的 \(c=0, d=0\) ,共有 \(a+b+1\) 个情况成立,与左式相同,故等式成立。

讨论更加一般的情况。有了前面的证明,我们考虑将 \(AB\) 分解质因数后食用,分解后的每一项的形式为 \(p^{a+b}\) 。左边根据约数个数基本性质“指数加一连乘积”,即每一个 \(p\) 对应的 \((a+b+1)\) 之积。对于右侧,前证说明对于每个 \(p\) ,合法的 \(c,d\) 的选择有对应的 \(a+b+1\) 种,要让 \([\gcd(x,y)=1]\) 需要每一个 \(p\) 都是合法情况。而每个 \(p\) 相对独立,其本质就是许多个“选择”,直接用乘法原理合并起来即可,于是也与左式相同。这样就证毕了。

证明思路很像积性函数的合并,也许对其他一些积性函数命题的证明这种方法也管用。

对于形如
\[
d(ABC) = \sum_{x|A} \sum_{y|B} \sum_{z|C} [\gcd (x,y) = 1] [\gcd (y,z) = 1] [\gcd (x,z) =1]
\]

的加强多元版,证明思路基本相同,不再赘述。

约数个数函数(d)的一个性质证明的更多相关文章

  1. 【[SDOI2015]约数个数和】

    慢慢化柿子吧 要求的是这个 \[\sum_{i=1}^N\sum_{j=1}^Md(ij)\] 神奇的约数个数函数有一个这样的性质 \[d(ij)=\sum_{x|i}\sum_{y|j}[(x,y) ...

  2. 洛谷 P3327 [SDOI2015]约数个数和 || Number Challenge Codeforces - 235E

    https://www.luogu.org/problemnew/show/P3327 不会做. 去搜题解...为什么题解都用了一个奇怪的公式?太奇怪了啊... 公式是这样的: $d(xy)=\sum ...

  3. BZOJ 3994: [SDOI2015]约数个数和 [莫比乌斯反演 转化]

    2015 题意:\(d(i)\)为i的约数个数,求\(\sum\limits_{i=1}^n \sum\limits_{j=1}^m d(ij)\) \(ij\)都爆int了.... 一开始想容斥一下 ...

  4. 【搜索】【约数个数定理】[HAOI2007]反素数ant

    对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4.如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数. 所以,n以内的反质数即为不超过n的 ...

  5. Mobius反演与积性函数前缀和演学习笔记 BZOJ 4176 Lucas的数论 SDOI 2015 约数个数和

    下文中所有讨论都在数论函数范围内开展. 数论函数指的是定义域为正整数域, 且值域为复数域的函数. 数论意义下的和式处理技巧 因子 \[ \sum_{d | n} a_d = \sum_{d | n} ...

  6. 积性函数&线性筛&欧拉函数&莫比乌斯函数&因数个数&约数个数和

    只会搬运YL巨巨的博客 积性函数 定义 积性函数:对于任意互质的整数a和b有性质f(ab)=f(a)f(b)的数论函数. 完全积性函数:对于任意整数a和b有性质f(ab)=f(a)f(b)的数论函数 ...

  7. LOJ #2185 / 洛谷 P3329 - [SDOI2015]约数个数和(莫比乌斯函数)

    LOJ 题面传送门 / 洛谷题面传送门 题意: 求 \(\sum\limits_{i=1}^n\sum\limits_{j=1}^md(ij)\),\(d(x)\) 为 \(x\) 的约数个数. \( ...

  8. 编写一个c函数,该函数给出一个字节中被置为1的位的个数

    请编写一个c函数,该函数给出一个字节中被置为1的位的个数 #include <stdio.h> void fun(char ch) { int i; int temp; int count ...

  9. Luogu P3327 [SDOI2015]约数个数和

    又是恶心的莫比乌斯反演,蒟蒻我又是一脸懵逼的被CXR dalao狂虐. 题目要求\(ans=\sum_{i=1}^n \sum_{j=1}^m d(ij)\),其中\(d(ij)\)表示数\(x\)的 ...

随机推荐

  1. CSS - 解决placeholder不起作用的方法

    input::placeholder {     font-size: 12px;     letter-spacing: 1px;     color: #A8C9FF !important; } ...

  2. Spring-IOC(基于注解)

    1.Spring 的 Bean 管理:(注解方式) 1.1 创建 web 项目,引入 Spring 的开发包: 注:在 Spring 的注解的 AOP 中需要引入 spring-aop 的 jar 包 ...

  3. 十四、JavaScript之不同类型变量相加

    一.代码如下 二.效果如下 <!DOCTYPE html> <html> <meta http-equiv="Content-Type" conten ...

  4. 【机器学习实战学习笔记(2-2)】决策树python3.6实现及简单应用

    文章目录 1.ID3及C4.5算法基础 1.1 计算香农熵 1.2 按照给定特征划分数据集 1.3 选择最优特征 1.4 多数表决实现 2.基于ID3.C4.5生成算法创建决策树 3.使用决策树进行分 ...

  5. 吴裕雄--天生自然C++语言学习笔记:C++ 数字

    下面是一个 C++ 中定义各种类型数字的综合实例: #include <iostream> using namespace std; int main () { // 数字定义 short ...

  6. 面向对象-static关键字实战案例

    面向对象-static关键字实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.static关键字概述 1>.static的功能 static关键字用于修饰成员变量和 ...

  7. Community Cloud零基础学习(三)Partner Account

    本篇参考:http://salesforce.vidyard.com/watch/bLE3QNRSej2iasw9vvc6Tk http://salesforce.vidyard.com/watch/ ...

  8. 《机实战》第2章 K近邻算法实战(KNN)

    1.准备:使用Python导入数据 1.创建kNN.py文件,并在其中增加下面的代码: from numpy import * #导入科学计算包 import operator #运算符模块,k近邻算 ...

  9. php和js的小区别

    1.今天看了下php的api感觉还可以,不是很难,可能没看到深入的地方, (1)和js很相似 目前感觉它和js的最大区别 js的  点  被替换成 -> function setCate($pa ...

  10. MessageBox.Show的使用

    MessageBox.Show("内容","标题") // 摘要:// 使用指定的帮助文件.HelpNavigator 和帮助主题显示一个具有指定文本.标题.按 ...