模板:数论 & 数论函数 & 莫比乌斯反演
作为神秘奖励……?也是为了方便背。


所有的除法都是向下取整。
数论函数:
\((f*g)(n)=\sum_{d|n}f(d)g(\frac{n}{d})\)
\((Id*\mu)(n)=\sum_{d|n}\mu(d)\frac{n}{d}=\phi(n)\)
筛法求积性函数:
int su[N],he[N],miu[N],phi[N],c[N],d[N],tot;
void Euler(int n){
miu[1]=d[1]=c[1]=phi[1]=1;
for(int i=2;i<=n;i++){
if(!he[i]){
su[++tot]=i;
miu[i]=-1;
phi[i]=i-1;
d[i]=2;
c[i]=1;
}
for(int j=1;j<=tot;j++){
int p=su[j];
if(i*p>n)break;
he[i*p]=1;
if(i%p==0){
miu[i*p]=0;
phi[i*p]=phi[i]*p;
d[i*p]=d[i]/(c[i]+1)*(c[i]+2);
c[i*p]=c[i]+1;
break;
}else{
miu[i*p]=miu[i]*miu[p];
phi[i*p]=phi[i]*phi[p];
d[i*p]=d[i]*d[p];
c[i*p]=1;
}
}
}
}
莫比乌斯反演:
\(n=\sum_{d|n}\phi(d)\)
\([n=1]=\sum_{d|n}\mu(d)\)
推导:
\(\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)=p]=\sum_{d=1}^{min(\frac{n}{p},\frac{m}{p})}\mu(d)*\frac{\frac{n}{p}}{d}*\frac{\frac{m}{p}}{d}\)
例题+推导:BZOJ1101 & 洛谷3455:[POI2007]ZAP
\(\sum_{i=1}^n\sum_{j=1}^mgcd(i,j)=\sum_{d=1}^{min(n,m)}\phi(d)*\frac{n}{d}*\frac{m}{d}\)
例题+推导:BZOJ2005:[Noi2010]能量采集
\(\sum_{i=1}^n\sum_{j=1}^mlcm(i,j)=\sum_{k=1}^{min(n,m)}sum(\frac{n}{k})sum(\frac{m}{k})\sum_{d|k}d^2\mu(d)\frac{k}{d}\)
例题+推导:BZOJ2693:jzptab——题解
杜教筛:
令\(M(n)=∑_{i=1}^nμ(i)\)
则\(M(n)=1−∑_{i=2}^nM(\frac{n}{i})\)
令\(S(n)=∑_{i=1}^n\phi(i)\)
则\(S(n)=∑_{i=1}^ni−∑_{i=2}^nS(\frac{n}{i})\)
推导:http://blog.csdn.net/samjia2000/article/details/70147436
+++++++++++++++++++++++++++++++++++++++++++
+本文作者:luyouqi233。 +
+欢迎访问我的博客:http://www.cnblogs.com/luyouqi233/ +
+++++++++++++++++++++++++++++++++++++++++++
模板:数论 & 数论函数 & 莫比乌斯反演的更多相关文章
- 【CCPC-Wannafly Winter Camp Day3 (Div1) F】小清新数论(莫比乌斯反演+杜教筛)
点此看题面 大致题意: 让你求出\(\sum_{i=1}^n\sum_{j=1}^n\mu(gcd(i,j))\). 莫比乌斯反演 这种题目,一看就是莫比乌斯反演啊!(连莫比乌斯函数都有) 关于莫比乌 ...
- [bzoj4659\2694]Lcm_数论_莫比乌斯反演
Lcm bzoj-4659 bzoj-2694 题目大意:给出A,B,考虑所有满足l<=a<=A,l<=b<=B,且不存在n>1使得n^2同时整除a和b的有序数对(a,b ...
- 【bzoj 3601】一个人的数论 (莫比乌斯反演+伯努利数)
题解: (吐槽:网上题解那个不严谨猜测真是没谁了……关键是还猜得辣么准……) 直接化简到求和那一段: $f_{d}(n)=\sum_{t|n}\mu(t)t^{d}\sum_{i=1}^{\frac{ ...
- 【BZOJ 2671】 2671: Calc (数论,莫比乌斯反演)
2671: Calc Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 303 Solved: 157 Description 给出N,统计满足下面条件 ...
- BZOJ4176 Lucas的数论 【莫比乌斯反演 + 杜教筛】
题目 去年的Lucas非常喜欢数论题,但是一年以后的Lucas却不那么喜欢了. 在整理以前的试题时,发现了这样一道题目"求Sigma(f(i)),其中1<=i<=N", ...
- bzoj 4176: Lucas的数论【莫比乌斯反演+杜教筛】
首先由这样一个结论: \[ d(ij)=\sum_{p|i}\sum_{q|j}[gcd(p,q)==1] \] 然后推反演公式: \[ \sum_{i=1}^{n}\sum_{j=1}^{n}\su ...
- 【bzoj3601】一个人的数论(莫比乌斯反演+拉格朗日插值)
传送门 题意: 求\[ \sum_{i=1}^{n}i^d[gcd(i,n)=1] \] 思路: 我们对上面的式子进行变换,有: \[ \begin{aligned} &\sum_{i=1}^ ...
- 【数论】莫比乌斯反演Mobius inversion
本文同步发布于作业部落,若想体验更佳,请点此查看原文.//博客园就是渣,连最基本的符号都打不出来.
- 【BZOJ4407】于神之怒加强版(莫比乌斯反演)
[BZOJ4407]于神之怒加强版(莫比乌斯反演) 题面 BZOJ 求: \[\sum_{i=1}^n\sum_{j=1}^mgcd(i,j)^k\] 题解 根据惯用套路 把公约数提出来 \[\sum ...
随机推荐
- 「LeetCode」0001-Two Sum(Ruby)
题意与分析 题意直接给出来了:给定一个数,返回数组中和为该数(下为\(x\))的两个数的下标. 这里有一个显然的\(O(n)\)的实现:建立一个hash表,每次读入数(记作\(p\))的时候查询has ...
- JAVA Map 之元素定位,冲突碰撞
基本特性: 维持健值对的集合接口,健不可以重复,每一个健只能映射到一个值. Map替代了原来的虚拟类Directory. Map提供了三种集合视角,keys(KeySet),values(Values ...
- python3-声音处理
先来说下二进制读写文件,这需要struct库 #二进制文件读写 import struct a= b=- # print(struct.pack("h",b)) # print(s ...
- selenium常用操作方法
Webdriver中比较常用的操作元素的方法: clear() 清除输入框的默认内容 send_keys("xxx") 在一个输入框里输入xx内容 ——如果输入中文,则需要在脚本开 ...
- [知识库:python-tornado]异步调用中的上下文控制Tornado stack context
异步调用中的上下文控制Tornado stack context https://www.zouyesheng.com/context-in-async-env.html 这篇文章真心不错, 非常透彻 ...
- JavaScript筑基篇(二)->JavaScript数据类型
说明 介绍JavaScript数据类型 目录 前言 参考来源 前置技术要求 JavaScript的6种数据类型 哪6种数据类型 undefined 类型 null 类型 boolean 类型 numb ...
- js学习之正则表达式
js学习之正则表达式 正则表达式(英语:Regular Expression,在代码中常简写为regex.regexp或RE)使用单个字符串来描述.匹配一系列符合某个句法规则的字符串搜索模式 一:语法 ...
- var,let,const,三种申明变量的整理
javascript,正在慢慢变成一个工业级语言,势力慢慢渗透ios,安卓,后台 首先let,是局部变量,块级作用域:var全局的,const是常量,也就是只读的: 一行demo说明 for (var ...
- 软件工程 作业part3 读后感
匆匆看完构建之法,觉得这种不认真看完书就去写随笔去评价这本书是对作者的不尊重,所以觉得应该提问题和写感悟. 我的一点拙见,提的问题在现在这个信息发达的时候感觉只要有时间都可以自己解决. 感觉软件工程这 ...
- Calculator Part Ⅰ (代码规范化修改)
GitHub/object-oriented 本次参照的C++代码规范 有一些规范内容在文件中其实并未提及,比如:空格的使用,修改的时候真的是一头雾水--根据文件中的例子,发现了一些文字部分没有提到的 ...