【BZOJ3309】DZY Loves Math 解题报告】的更多相关文章

[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\),求\(\sum\limits_{a_i=1}\sum\limits_{b_j=1}f(\gcd(i,j))\). Input 第一行一个数\(T\),表示询问数. 接下来\(T\)行,每行两个数\(a,b\…
一通正常的莫比乌斯反演后,我们只需要求出g(n)=Σf(d)*μ(n/d)的前缀和就好了. 考虑怎么求g(n).当然是打表啊.设n=∏piai,n/d=∏pibi .显然若存在bi>1则这个d没有贡献.考虑bi为0和1两种情况.如果只看ai最小的质因子的选取情况,会发现大部分情况下其是0还是1,对f的取值是没有影响的,但会使μ取反,于是就抵消为0.而特殊情况即为所有ai均相同,此时若所有bi都取1会使f减少.与一般情况比较可以得到此时g(n)=(-1)质因子个数+1. 然后就可以线性筛了.记录一…
$\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就会包含平方因子. 接下…
bzoj2154||洛谷P1829 https://www.lydsy.com/JudgeOnline/problem.php?id=2154 https://www.luogu.org/problemnew/show/P1829 不妨设n<=m 就是求$ans=\sum_{k=1}^m{\frac{1}{k}}\sum_{i=1}^n\sum_{j=1}^m{ij[(i,j)=k]}$ 把1/k后面的那一部分提出来,设为f(k), 然后莫比乌斯反演得到f(k)较简易的计算式,代回ans,并化简…
莫比乌斯反演得 $ans=\sum g[i]\frac{a}{i}\frac{b}{i}$ 其中$g[i]=\sum_{j|i}f[j]\mu(\frac{i}{j})$ 由f和miu的性质可得 设$n=p[1]^{a[1]}p[2]^{a[2]}...p[k]^{a[k]}$ 若存在$a[i]$不等于$a[j]$,则$g[n]=0$ 否则$g[n]=(-1)^{k+1}$ 线性筛$O(n)$预处理,然后每次询问$O(\sqrt{n})$分块计算 #include<cstdio> typede…
对于这题本人刚开始的时候觉得应该用DFS来解决实现这个问题,但由于本人对于DFS并不是太熟,所以就放弃了这个想法: 但又想了想要按照这个要求实现问题则必须是黑白相间,然后把是字符是'B'或'W'改为'-',即可: 下面贴一下我的代码吧 #include<cstdio> #include<cstring> #include<algorithm> #define N 100+10 using namespace std; char maze[N][N]; char str[…
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).T<=1e4; a,b<=1e7. Solution 一开始没仔细看数据范围然后打了一个每个询问O(n)的,当然T了 (盗一张图) 一开始我按照第二行的做的,里层外层循环都和ab有关,每一层都要sqrt(n)…
题目 对于正整数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). 输入格式 第一行一个数T,表示询问数. 接下来T行,每行两个数a,b,表示一个询问. 输出格式 对于每一个询问,输出一行一个非负整数作为回答. 输入样例 4 7558588 9653114 6514903 4451211 742…
题目链接:http://codeforces.com/problemset/problem/447/C 题目意思:给出 一个 包含 n 个数的序列你,从中需要找出这个序列的最长子串,满足在里面只修改其中一个元素,使得这个子串的元素严格递增,求出这个长度是多少. 以为是DP题(它的分类确实是DP题),无从下手.看了下别人写的,有些部分不太明白:根据自己的理解再结合一些别人的,加了些特判,总算过了^_^,我好像觉得我的做法不像是用了DP思想咯........ 总体思路就是:设两个数组,分别为inc_…
题目链接:http://codeforces.com/problemset/problem/445/B 题目意思:给出 n 种chemicals,当中有 m 对可以发生反应.我们用danger来评估这些chemicals的厉害程度.厉害程度是这样的:一瓶什么都不加的瓶子的danger 为 1,如果有一对(即 m = 1)chemicals 能够发生反应,那么这个danger就会加倍(1*2).不过要注意一点,对于 1 2: 1 3: 2 3,danger为 4 而不为 8.(因为这个条件限制了:…