BZOJ_4176_Lucas的数论_杜教筛+莫比乌斯反演 Description 去年的Lucas非常喜欢数论题,但是一年以后的Lucas却不那么喜欢了. 在整理以前的试题时,发现了这样一道题目“求Sigma(f(i)),其中1<=i<=N”,其中 表示i的约数个数.他现在长大了,题目也变难了. 求如下表达式的值:   其中 表示ij的约数个数. 他发现答案有点大,只需要输出模1000000007的值. Input 第一行一个整数n. Output 一行一个整数ans,表示答案模100000…
题面 设d(x)d(x)d(x)为xxx的约数个数,给定NNN,求 ∑i=1N∑j=1Nd(ij)\sum^{N}_{i=1}\sum^{N}_{j=1} d(ij)i=1∑N​j=1∑N​d(ij) N<=109N<=10^9N<=109 题目分析 有这样一个结论 d(ij)=∑x∣i∑y∣j[(x,y)==1]d(ij)=\sum_{x|i}\sum_{y|j}[(x,y)==1]d(ij)=x∣i∑​y∣j∑​[(x,y)==1]这道题就是下面这道题的数据增强版,那么这个结论的证明…
题目大意 定义复数\(a+bi\)为整数\(k\)的约数,当且仅当\(a\)和\(b\)为整数且存在整数\(c\)和\(d\)满足\((a+bi)(c+di)=k\). 定义复数\(a+bi\)的实部为\(a\),虚部为\(b\). 定义\(f(n)\)为整数\(n\)的所有实部大于\(0\)的约数的实部之和. 给定正整数\(n\),求出\(\sum_{i=1}^nf(i)\)对\(1004535809\)取模后得到的值. \(n\leq {10}^{10}\) 题解 以前看到一个数论题就是反演…
题面: 传送门 思路: 首先我们把区间缩小到$\left[\lfloor\frac{L-1}{K}\rfloor,\lfloor\frac{R}{K}\rfloor\right]$ 这道题的最特殊的点在于,他的gcd不是两个数的而是多个数的,是一坨sigma 但是,我们发现它依然可以反演 令$f\left(i\right)$为区间$\left[l,r\right]$内选出$n$个数,总计$gcd=i$的方法数 令$g\left(i\right)$为区间$\left[l,r\right]$内选出$…
题目描述 求∑i=1n∑j=1n(i,j) mod (1e9+7)n<=1010\sum_{i=1}^n\sum_{j=1}^n(i,j)~mod~(1e9+7)\\n<=10^{10}i=1∑n​j=1∑n​(i,j) mod (1e9+7)n<=1010 题目分析 乍一看十分像裸莫比乌斯反演,然而nnn的范围让人望而却步 于是先变化一下式子 Ans=∑i=1n∑j=1n(i,j)Ans=\sum_{i=1}^n\sum_{j=1}^n(i,j)Ans=i=1∑n​j=1∑n​(i,j…
题目大意: 读入n. 第一行输出“1”(不带引号). 第二行输出$\sum_{i=1}^n i\phi(i)$. 题解: 所以说那个$\sum\mu$是在开玩笑么=.= 设$f(n)=n\phi(n),F(n)=\sum_{i=1}^{n}f(i)$. 设$g=(f*id)$,则$g(n)=\sum_{d|n}id(\frac{n}{d})f(d)=n^2$. 设$G(n)=\sum_{i=1}^n g(i)=\frac{n(n+1)(2n+1)}{6}$. 同时将$G$完全展开我们得到: $G…
题面 传送门 题解 嗯--还是懒得写了--这里 //minamoto #include<bits/stdc++.h> #define R register #define IT map<int,int>::iterator #define fp(i,a,b) for(R int i=a,I=b+1;i<I;++i) #define fd(i,a,b) for(R int i=a,I=b-1;i>I;--i) #define go(u) for(int i=head[u]…
Description: 求$\sum\limits_{i=1}^{n} \sum\limits_{j=1}^{n} d(i \times j)$ $d(i)$表示$i$的约数个数和.$n \leq 10^9$ 废话: 好久没有做反演了感觉自己都不会了... 做了一遍发现自己真的不会了 手推了不知道多久终于推出了式子中间还错了一遍打了一半发现过不去样例 题解: 标签都知道了那也就没什么好说的了,直接上式子(类比<约数个数和>那道题)(以下分数皆表示整除向下取整) $\sum\limits_{i…
首先感谢又强又嘴又可爱脸还筋道的国家集训队(Upd: WC2019 进候选队,CTS2019 不幸 rk6 退队)神仙瓜 ( jumpmelon ) 给我讲解这三种筛法~~ 由于博主的鸽子属性,这篇博客可能会无限期咕咕咕 线性筛 这种算法是比较基础的筛法,在入门时就已经学习用它来筛一定范围内的质数了,因此具体算法流程无需赘述.但在筛质数的基础上,这种算法由于其优越性质在处理数论函数时也被广泛应用.这里直接给出筛出小于 \(N\) 的质数的模板. void init() { for (int i…
求$$\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n}f(ij)$$,其中$f(x)$表示$x$的约数个数,$0\leq n\leq 10^9$,答案膜$10^9+7$ 题解 首先有个妙不可言(被hjw污染了)的结论:$$f(nm)=\sum\limits_{i|n}\sum\limits_{j|m}[gcd(i,j)=1]$$ 证明:咕 那么大力推一波式子: $$\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n}f(ij)$…