有一个神奇的技巧——打表 code: #include <bits/stdc++.h> #define N 10000007 #define ll long long #define setIO(s) freopen(s".in","r",stdin) using namespace std; int cnt; int vis[N],prime[N],g[N],mu[N],nump[N],minp[N],qp[N]; void Initialize()…
DZY Loves Math Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 1303  Solved: 819[Submit][Status][Discuss] Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0.给定正整数a,b,求sigma(sigma(f(gcd(i,j)))) (i=1..a, j=1..b).…
枚举$d=gcd(i,j)$ 然后大力反演 ——来自Popoqqq的博客. 然后大力讨论后面的函数的意义即可. http://blog.csdn.net/popoqqq/article/details/42122413 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; #define F(i,j,k) for (…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3309 凭着上课所讲和与 Narh 讨论推出式子来: 竟然是第一次写数论分块!所以迷惑了半天: 在预处理的筛中也犯了愚蠢的错误...总之全仰仗 Narh 提点了... 所以具体题解就看这里咯:https://www.cnblogs.com/Narh/p/9740786.html 代码如下: #include<iostream> #include<cstdio> #include…
题意:\(f(n)\)为n的质因子分解中的最大幂指数,求\(\sum_{i=1}^n \sum_{j=1}^m f(gcd(i,j))\) 套路推♂倒 \[ \sum_{D=1}^n \sum_{d|D} f(d)\mu(\frac{D}{d}) \frac{n}{D} \frac{m}{D} \] 这次函数是\(g = (f*\mu )\),\(f\)显然不是积性函数,但我们照样可以用线性筛 具体做法我晚上回家再补吧草稿纸忘带了... 补: \(g(p^a)=p-(p-1)\) 因为卷了\(\…
3309: DZY Loves Math Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0. 给定正整数a,b,求sigma(sigma(f(gcd(i,j)))) (i=1..a, j=1..b). Input 第一行一个数T,表示询问数. 接下来T行,每行两个数a,b,表示一个询问. Output 对于每一个询问,输出一行一个非负整数作为回答. Sample In…
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=3309 题解: 莫比乌斯反演,线筛 化一化式子: f(x)表示x的质因子分解中的最大幂指数 $\sum_{i=1}^n \sum_{j=1}^m f(gcd(i,j))$ $\quad\quad=\sum_{g=1}^{n}f(g)\sum_{d=1}^{\lfloor \frac{n}{g} \rfloor} \mu(d)\lfloor \frac{n}{gd} \rfloor\lfloo…
3309: DZY Loves Math Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 761  Solved: 401[Submit][Status][Discuss] Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0.给定正整数a,b,求sigma(sigma(f(gcd(i,j)))) (i=1..a, j=1.…
[BZOJ3309]DZY Loves Math Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0.给定正整数a,b,求sigma(sigma(f(gcd(i,j)))) (i=1..a, j=1..b). Input 第一行一个数T,表示询问数.接下来T行,每行两个数a,b,表示一个询问. Output 对于每一个询问,输出一行一个非负整数作为回答. Sample…
题意: 对于正整数n,定义$f(n)$为$n$所含质因子的最大幂指数.例如$f(1960)=f(2^3 * 5^1 * 7^2)=3$,$f(10007)=1$,$f(1)=0$. 给定正整数$a,b$,求 $$\sum\limits_{i=1}^{a}\sum\limits_{j=1}^{b}f(gcd(i,j))$$ 多组数据,$T\leq 10000$ $1\leq a,b\leq 10^7$ 题解: 还是莫比乌斯反演,设$a<b$: $$\sum\limits_{i=1}^{a}\sum…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3309 像这种数据范围,一般是线性预处理,每个询问 sqrt (数论分块)做. 先反演一番.然后 f( ) 还不能一个就花 log 的时间,所以要分析性质. 设 n 一共 m 个质因数,其中最大的指数是 t . 已有 Σ(d|n) f(d)*u(n/d) ,如果 u( ) 的部分含有指数>=2的质因子,就无贡献:所以 u( ) 里每种质因数选1个或0个,一共 2^m 种. 如果 n 里有一个…
Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0. 给定正整数a,b,求sigma(sigma(f(gcd(i,j)))) (i=1..a, j=1..b). Input 第一行一个数T,表示询问数. 接下来T行,每行两个数a,b,表示一个询问. Output 对于每一个询问,输出一行一个非负整数作为回答. Sample Input 4 7558588 9653114…
$\sum\limits_{T=1}^{n}\lfloor\frac{n}{T}\rfloor\lfloor\frac{m}{T}\rfloor\sum\limits_{d|T}f(d)\mu(\frac{T}{d})$ 求出$g(n)=\sum_{d|T}f(d)\mu(\frac{n}{d})$的前缀和,分块加速. 考虑怎么快速求g.观察什么时候d能对答案产生贡献,显然当且仅当:对于n的每个质因子,d包含这个质因子的次幂数至多比n包含这个质因子的次幂数少1,否则n/d就会包含平方因子. 接下…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3481 推推式子发现:令Q=gcd(P,Q),ans=Σ(d|Q) d*phi(P/d).把 d 质因数分解,设 t 为 Q 的指数, w 为 P 的指数,ans变成每个质数的 Σ(i=0~t) p^i * phi( p^(w-i) ) 连乘. 分解质因数用 Pollar Rho . 注意 Q=0 就是 Q=P,要特判!而且不要以为答案变成  (!x || !y) 了! d从0到P-1 就是…
BZOJ 3561 DZY Loves Math VI 求\(\sum_{i=1}^{n}\sum_{j=1}^{m}\text{lcm}(i,j)^{\gcd(i,j)}\),钦定\(n\leq m\) \(\sum_{i=1}^{n}\sum_{j=1}^{m}(\frac{ij}{{\gcd(i,j)}})^{\gcd(i,j)}\) 按套路,提出\(\gcd(i,j)\),枚举的\(i\),\(j\)都除\(g\) \(\sum_{g=1}^ng^g\sum_{i=1}^{n/g}\su…
3512: DZY Loves Math IV 题意:求\(\sum_{i=1}^n \sum_{j=1}^m \varphi(ij)\),\(n \le 10^5, m \le 10^9\) n较小,考虑写成前缀和的形式,计算\(S(n,m)=\sum_{i=1}^m \varphi(in)\) 一开始想出 \[ n= \prod_i p_i,\ \varphi(in) = \varphi(i) \cdot \varphi(\frac{n}{d})\cdot d,\ d=(n,i) \] 比较…
3462: DZY Loves Math II Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 211  Solved: 103[Submit][Status][Discuss] Description Input 第一行,两个正整数 S 和 q,q 表示询问数量.接下来 q 行,每行一个正整数 n. Output 输出共 q 行,分别为每个询问的答案. Sample Input 30 3 9 29 1000000000000000000 Samp…
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=3561 题解: 莫比乌斯反演 $$\begin{aligned}ANS&=\sum_{i=1}^{n}\sum_{j=1}^{m}lcm(i,j)^{gcd(i,j)}\\&=\sum_{g=1}^{min(n,m)}\sum_{i=1}^{\frac{n}{g}}\sum_{j=1}^{\frac{m}{g}}g^gi^gj^g[gcd(i,j)==1]\\&=\sum_{g…
推到了一个推不下去的形式,然后就不会了 ~ 看题解后傻了:我推的是对的,推不下去是因为不需要再推了. 复杂度看似很大,但其实是均摊 $O(n)$ 的,看来分析复杂度也是一个能力啊 ~ code: #include <bits/stdc++.h> #define ll long long #define N 500006 #define mod 1000000007 #define setIO(s) freopen(s".in","r",stdin) us…
题意 \(T(T \le 10000)\)次询问,每次给出\(a, b(1 \le a, b \le 10^7)\),求 \[\sum_{i=1}^{a} \sum_{j=1}^{b} f((i, j))\] 其中\(f(n)\)表示\(n\)所含质因子的最大幂指数.\(f(1)=0\). 分析 以下默认\(a \le b\) $$\begin{align} & \sum_{i=1}^{a} \sum_{j=1}^{b} f((i, j)) \\= & \sum_{d=1}^{a} f(d…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3481 推式子:xy % P = Q 的个数 由于 0 <= x,y < P,所以对于一个固定的 x,如果 (x,P) | Q,则有 (x,P) 个解: 所以个数为 ∑(0 <= x < P ) (x,P) * [ (x,P) | Q ]  ( [...] 表示 ... 为真则为1,否则为0) = ∑( d|P, d|Q ) d * φ( P/d ) 令 Q = (P,Q),则…
参考:http://blog.csdn.net/wzf_2000/article/details/54630931 有这样一个显然的结论:当\( |\mu(n)|==1 \)时,\( \phi(nk)=\phi(k)\sum_{d|gcd(n,k)}\phi(\frac{n}{d}) \)然后看n的范围比较友好就先不去管它,先看后面的: \[ if |\mu(i)|==1 \] \[ \sum_{k=1}^{i}\sum_{d|i,d|k}\phi(\frac{n}{d})\phi(k) \]…
给定n个正整数a1,a2,…,an,求 的值(答案模10^9+7). Input 第一行一个正整数n. 接下来n行,每行一个正整数,分别为a1,a2,…,an. Output 仅一行答案. Sample Input 3 6 10 15 Sample Output 1595 Hint 1<=n<=10^5,1<=ai<=10^7.共3组数据. 题目大意 (题目过于简洁,完全不需要大意) 题目虽然很简洁,但是处处挖着坑等你跳. 原计划两个小时把今天讲的例题A完,实际上两个小时都被这道题…
对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0.给定正整数a,b,求: $$\sum_{i=1}^{i<=a}\sum_{j=1}^{j<=b}f(gcd(i,j))$$ bzojP3309 http://www.lydsy.com/JudgeOnline/problem.php?id=3309 化式子: $$\sum_{i=1}^{i<=a}\sum_{j=1}^{j<=b…
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=3512 题解: $$求ANS=\sum_{i=1}^{N}\sum_{j=1}^{M}\phi(ij)\quad N\leq 10^5\;M\leq 10^9$$ 杜教筛 因为N比较小,所以从这里入手: 设$sum(n,M)=\sum_{i=1}^{M}\phi(ni)$ 则答案为$ANS=\sum_{n=1}^{N}sum(n,M)$ 考虑如何求$sum(n,M)$ 首先按照唯一分解定理,…
传送门 推式子(默认\(N \leq M\)): \(\begin{align*} \sum\limits_{i=1}^N \sum\limits_{j=1}^Mf(gcd(i,j)) & = \sum\limits_{d=1}^N f(d) \sum\limits_{i=1}^\frac{N}{d} \sum\limits_{j=1}^\frac{M}{d} \sum\limits_{p | gcd(i,j)} \mu(p) \\ &= \sum\limits_{d=1}^N f(d)…
Description 给定n,m,求 模10^9+7的值. Input 仅一行,两个整数n,m. Output 仅一行答案. Sample Input 100000 1000000000 Sample Output 857275582 数据规模: 1<=n<=10^5,1<=m<=10^9,本题共4组数据. Solution 这题还真是要一点函数基础 设 \(S(n,m)=\sum_{i=1}^m\varphi(in)\) ,所以答案就是 \(\sum_{i=1}^nS(i,m)…
Description 给定n,m,求 模10^9+7的值. Solution 设 \(S(n,m)\) 表示 \(\sum_{i=1}^{m}\phi(n*i)\) \(Ans=\sum_{i=1}^{n}S(i,m)\) \(S(n,m)=\sum_{i=1}^{m}\phi(n*i)\) 如果 \(\mu(n)!=0\) 则有 \(\sum_{i=1}^{m}\phi(\frac{n}{gcd(i,n)})*\phi(i)*gcd(i,n)\) (因为要保证除完\(gcd\)之后,两数不含…
好题. 首先发现$p$是互质的数. 然后我们要求$\sum_{i=1}^{k} pi*xi=n$的方案数. 然后由于$p$不相同,可以而$S$比较小,都是$S$的质因数 可以考虑围绕$S$进行动态规划. 然后发现有时候许多情况是多余的.因为一整个$S$只能由一些相同的$p$组合而成. 所以这些部分可以用组合数计算,剩下的部分可以用背包处理出来. 需要滚动数组,而且需要前缀和转移. #include <cmath> #include <cstdio> #include <cst…
BZOJ 3309: DZY Loves Math I 题意 \(f(n)\) 为 \(n\) 幂指数的最大值. \[ \sum_{i = 1}^{a} \sum_{j = 1}^{b} f(\gcd(i, j)) \] \(T\le 10000, 1 \le a,b \le 10^7\) 题解 \[ \begin{aligned} ans &= \sum_{i = 1}^{a} \sum_{j = 1}^{b} f(\gcd(i, j)) \\ &= \sum_{d = 1}^{\min…