约数个数函数(d)的一个性质证明
要用到这个性质,而且网上几乎没有能看的证明,所以特别提出来整理一下。
\[
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)的一个性质证明的更多相关文章
- 【[SDOI2015]约数个数和】
慢慢化柿子吧 要求的是这个 \[\sum_{i=1}^N\sum_{j=1}^Md(ij)\] 神奇的约数个数函数有一个这样的性质 \[d(ij)=\sum_{x|i}\sum_{y|j}[(x,y) ...
- 洛谷 P3327 [SDOI2015]约数个数和 || Number Challenge Codeforces - 235E
https://www.luogu.org/problemnew/show/P3327 不会做. 去搜题解...为什么题解都用了一个奇怪的公式?太奇怪了啊... 公式是这样的: $d(xy)=\sum ...
- BZOJ 3994: [SDOI2015]约数个数和 [莫比乌斯反演 转化]
2015 题意:\(d(i)\)为i的约数个数,求\(\sum\limits_{i=1}^n \sum\limits_{j=1}^m d(ij)\) \(ij\)都爆int了.... 一开始想容斥一下 ...
- 【搜索】【约数个数定理】[HAOI2007]反素数ant
对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4.如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数. 所以,n以内的反质数即为不超过n的 ...
- Mobius反演与积性函数前缀和演学习笔记 BZOJ 4176 Lucas的数论 SDOI 2015 约数个数和
下文中所有讨论都在数论函数范围内开展. 数论函数指的是定义域为正整数域, 且值域为复数域的函数. 数论意义下的和式处理技巧 因子 \[ \sum_{d | n} a_d = \sum_{d | n} ...
- 积性函数&线性筛&欧拉函数&莫比乌斯函数&因数个数&约数个数和
只会搬运YL巨巨的博客 积性函数 定义 积性函数:对于任意互质的整数a和b有性质f(ab)=f(a)f(b)的数论函数. 完全积性函数:对于任意整数a和b有性质f(ab)=f(a)f(b)的数论函数 ...
- LOJ #2185 / 洛谷 P3329 - [SDOI2015]约数个数和(莫比乌斯函数)
LOJ 题面传送门 / 洛谷题面传送门 题意: 求 \(\sum\limits_{i=1}^n\sum\limits_{j=1}^md(ij)\),\(d(x)\) 为 \(x\) 的约数个数. \( ...
- 编写一个c函数,该函数给出一个字节中被置为1的位的个数
请编写一个c函数,该函数给出一个字节中被置为1的位的个数 #include <stdio.h> void fun(char ch) { int i; int temp; int count ...
- Luogu P3327 [SDOI2015]约数个数和
又是恶心的莫比乌斯反演,蒟蒻我又是一脸懵逼的被CXR dalao狂虐. 题目要求\(ans=\sum_{i=1}^n \sum_{j=1}^m d(ij)\),其中\(d(ij)\)表示数\(x\)的 ...
随机推荐
- 常见SQL语句杂谈(笔记)
SQL语句(总结,完整的select语句) select distinct * from 表名 where ...group by ... having ...order by ... limit s ...
- 博客已经转到www.vsyf.me/blog
租了个服务器,重搭了个博客 阿发的博客
- 025-PHP常用字符串函数(二)
<?php $text = "My dog's name is Angus."; //print Angus print(substr($text, , )."&l ...
- java排序,效率高的是哪种排序方法
和所有其他语言是一样的.应该还是快速排序效率最高. public static void bubbleSort(int a[]) {int len = a.length;for (int i = 0; ...
- c++程序—switch分支
#include<iostream> using namespace std; #include<string> int main() { //多元分支 cout <&l ...
- Web基础之Servlet
Servlet Servlet : server applet,直译服务小程序.那Servlet到底是什么呢? Servlet说白了其实就是一个接口,接口的作用是什么?规范呗,这个接口规定了下面三个问 ...
- blkid命令 获取文件系统类型、UUID
在Linux下可以使用blkid命令对查询设备上所采用文件系统类型进行查询.blkid主要用来对系统的块设备(包括交换分区)所使用的文件系统类型.LABEL.UUID等信息进行查询.要使用这个命令必须 ...
- 【新年呈献】高性能网络通信框架 HP-Socket v5.7.1
项目主页 : http://www.oschina.net/p/hp-socket 开发文档 : https://www.docin.com/p-2287339564.html 下载地址 : http ...
- Tensorflow学习教程------代价函数
Tensorflow学习教程------代价函数 二次代价函数(quadratic cost): 其中,C表示代价函数,x表示样本,y表示实际值,a表示输出值,n表示样本的总数.为简单起见,使用一 ...
- MySQL表的几个简单查询语句
1. 创建数据库CREATE DATABASE database-name 2. 删除数据库drop database dbname 3. 创建新表create table tabname(co ...