P4449-于神之怒加强版【莫比乌斯反演】
正题
题目链接:https://www.luogu.com.cn/problem/P4449
题目大意
TTT组询问给出n,mn,mn,m求∑i=1n∑j=1mgcd(i,j)k\sum_{i=1}^n\sum_{j=1}^mgcd(i,j)^ki=1∑nj=1∑mgcd(i,j)k
解题思路
∑i=1n∑j=1mgcd(i,j)k\sum_{i=1}^n\sum_{j=1}^mgcd(i,j)^ki=1∑nj=1∑mgcd(i,j)k
∑d=1ndk∑i=1n∑j=1m[gcd(i,j)==d]\sum_{d=1}^nd^k\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)==d]d=1∑ndki=1∑nj=1∑m[gcd(i,j)==d]
f(x)=∑i=1n∑j=1m[gcd(i,j)==x]f(x)=\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)==x]f(x)=i=1∑nj=1∑m[gcd(i,j)==x]
F(x)=∑x∣if(i)F(x)=\sum_{x|i}f(i)F(x)=x∣i∑f(i)
F(x)=⌊nx⌋⌊mx⌋F(x)=\lfloor\frac{n}{x}\rfloor\lfloor\frac{m}{x}\rfloorF(x)=⌊xn⌋⌊xm⌋
f(x)=∑x∣iF(x)=∑x∣iμ(ix)⌊ni⌋⌊mi⌋f(x)=\sum_{x|i}F(x)=\sum_{x|i}\mu(\frac{i}{x})\lfloor\frac{n}{i}\rfloor\lfloor\frac{m}{i}\rfloorf(x)=x∣i∑F(x)=x∣i∑μ(xi)⌊in⌋⌊im⌋
∑x=1n⌊nx⌋⌊mx⌋∑x∣iμ(ix)ik\sum_{x=1}^n\lfloor\frac{n}{x}\rfloor\lfloor\frac{m}{x}\rfloor\sum_{x|i}\mu(\frac{i}{x})i^kx=1∑n⌊xn⌋⌊xm⌋x∣i∑μ(xi)ik
然后预处理∑x∣iμ(ix)ik\sum_{x|i}\mu(\frac{i}{x})i^k∑x∣iμ(xi)ik的前缀和即可。
codecodecode
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
const ll N=5e6+10,XJQ=1e9+7;
ll T,k,n,m,cnt,mu[N],g[N],pw[N],pri[N];
bool vis[N];
ll power(ll x,ll b){ll ans=1;while(b){if(b&1)ans=ans*x%XJQ;x=x*x%XJQ;b>>=1;}return ans;
}
void prime(){g[1]=1;for(ll i=2;i<N;i++){if(!vis[i]){pri[++cnt]=i;pw[cnt]=power(i,k);g[i]=(pw[cnt]-1+XJQ)%XJQ;}for(ll j=1;i*pri[j]<N&&j<=cnt;j++){vis[i*pri[j]]=1;if(i%pri[j]==0){g[i*pri[j]]=g[i]*pw[j]%XJQ;break;}g[i*pri[j]]=g[i]*g[pri[j]]%XJQ;}}for(ll i=1;i<N;i++)g[i]=(g[i-1]+g[i])%XJQ;return;
}
int main()
{scanf("%lld%lld",&T,&k);prime();while(T--){scanf("%lld%lld",&n,&m);if(n>m)swap(n,m);ll ans=0;for(ll l=1,r;l<=n;l=r+1){r=min(n/(n/l),m/(m/l));(ans+=(n/l)*(m/l)%XJQ*(g[r]-g[l-1]+XJQ)%XJQ)%=XJQ;}printf("%lld\n",(ans+XJQ)%XJQ);}
}
P4449-于神之怒加强版【莫比乌斯反演】相关推荐
- BZOJ 4407: 于神之怒加强版|莫比乌斯反演
不会搞数学公式很苦恼!! flag:会写数学公式之后一定好好写一发题解 非常感谢龙爷(sd第一男选手!!可惜神犇都不写blog)提供线性筛做法 2.16----------------- 一下均设n& ...
- P4449 于神之怒加强版
P4449 于神之怒加强版 推式子 ∑i=1n∑j=1ngcd(i,j)h\sum_{i = 1} ^{n} \sum_{j = 1} ^{n} gcd(i, j) ^ h i=1∑nj=1∑ng ...
- GMOJ 4161 / Luogu P4449 于神之怒 (加强版) 题解
于神之怒 (加强版) 题解 Description 求 F ( n , m ) = ∑ i = 1 n ∑ j = 1 m gcd ( i , j ) k F(n,m)=\sum_{i=1}^n\ ...
- 莫比乌斯反演习题总结
一:常用卷积 \[1 * \mu = \epsilon\] \[Id * \mu = \varphi\] \[1 * \varphi = Id \] 最后一个是欧拉反演. 根据这些卷积之间的相互转化, ...
- 【LG-P4449】于神之怒加强版
P4449 于神之怒加强版 给定 n , m , k n,m,k n,m,k,计算 ∑ i = 1 n ∑ j = 1 m gcd ( i , j ) k \sum_{i=1}^n \sum_{j ...
- bzoj4407 于神之怒加强版(莫比乌斯反演+线性筛)
4407: 于神之怒加强版 Time Limit: 80 Sec Memory Limit: 512 MB Submit: 355 Solved: 174 [Submit][Status][Dis ...
- 【Project Euler】530 GCD of Divisors 莫比乌斯反演
[题目]GCD of Divisors [题意]给定f(n)=Σd|n gcd(d,n/d)的前缀和F(n),n=10^15. [算法]莫比乌斯反演 [题解]参考:任之洲数论函数.pdf 这个范围显然 ...
- 狄利克雷卷积莫比乌斯反演证明
狄利克雷卷积简介 卷积这名字听起来挺学究的,今天学了之后发现其实挺朴实hhh. 卷积: "(n)"表示到n的一个范围. 设\(f,g\)是两个数论函数(也就是说,以自然数集为定义域 ...
- 2021牛客暑期多校训练营(二) J. Product of GCDs 不动脑子的莫比乌斯反演做法(
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://ac.nowcoder.com/acm/contest/11253/J ...
- P4619 [SDOI2018]旧试题(莫比乌斯反演,建图优化三重枚举,三元环计数,神仙好题,超级清晰易懂)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 P4619 [SDOI2018]旧试题(莫比乌斯反演,三元环计数) Problem 计算: ∑i=1A ...
最新文章
- onmouseover和onmouseout在GridView中应用
- 大数据学习——spark安装
- 语音识别:从GMM-HMM到端到端
- CXF客户端配置请求超时限制-SocketTimeoutException(Spring配置文件中配置和通过代码进行配置)
- python自动生成word版本试卷_Python解决问题:生成包含加减练习题的Word文件
- 使用WebBenchmark对webapi进行管理和性能测试
- VSCode 用户自定义片段 snippet 基本语法说明
- 45个极具冲击力的WordPress摄影网站模板
- oracle 查询所有组合,Oracle的组合条件查询
- isNaN与parseInt/parseFloat
- Tensorflow 循环神经网络03 LSTM长短时记忆神经网络
- 帝国cms清除html标签,帝国CMS如何删除清空旧数据让栏目文章ID从1开始起(一)...
- 乱码翻译器在线翻译_GAL党的福音——开源生肉翻译器MisakaTranslator正式版发布...
- java生成 折线图
- ROS路由器脚本文件编辑更新器
- 自动生成Makefile的全过程详解2
- 西方哲学史的主要发展阶段
- XiaoZi's CrackMe
- 《Cisco VPP SFC》2、NSH_SFC 安装
- 魅族Android7.0刷机包,乐视X900+安卓7.1.2 魅族Flyme6刷机包 最新6.8.3.17R版 紫火20180510更新...
热门文章
- java 支付宝 退款_Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝支付)
- html图片宽度高度等比例绽放,css图片自动绽放大小,左右,上下居中
- 电脑任务管理器快捷键_电脑知识小常识
- 服务器磁盘系统,服务器磁盘阵列与操作系统
- php查询类似abab,ABAB中的正则表达式匹配编号(必须相同) - php
- python监控键盘输入_Python实现监控键盘鼠标操作示例【基于pyHook与pythoncom模块】...
- 7-4 二叉树的遍历!(简单) (25 分)
- 在数组中找重复数、只出现一次的数或丢失数的题目(Leetcode题解-Python语言)
- [蓝桥杯2016决赛]七星填数-next_permutation枚举
- java调优方法,jvm监控工具