正题

题目链接: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∑n​j=1∑m​gcd(i,j)k


解题思路

∑i=1n∑j=1mgcd(i,j)k\sum_{i=1}^n\sum_{j=1}^mgcd(i,j)^ki=1∑n​j=1∑m​gcd(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∑n​dki=1∑n​j=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∑n​j=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-于神之怒加强版【莫比乌斯反演】相关推荐

  1. BZOJ 4407: 于神之怒加强版|莫比乌斯反演

    不会搞数学公式很苦恼!! flag:会写数学公式之后一定好好写一发题解 非常感谢龙爷(sd第一男选手!!可惜神犇都不写blog)提供线性筛做法 2.16----------------- 一下均设n& ...

  2. P4449 于神之怒加强版

    P4449 于神之怒加强版 推式子 ∑i=1n∑j=1ngcd(i,j)h\sum_{i = 1} ^{n} \sum_{j = 1} ^{n} gcd(i, j) ^ h i=1∑n​j=1∑n​g ...

  3. 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\ ...

  4. 莫比乌斯反演习题总结

    一:常用卷积 \[1 * \mu = \epsilon\] \[Id * \mu = \varphi\] \[1 * \varphi = Id \] 最后一个是欧拉反演. 根据这些卷积之间的相互转化, ...

  5. 【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 ...

  6. bzoj4407 于神之怒加强版(莫比乌斯反演+线性筛)

    4407: 于神之怒加强版 Time Limit: 80 Sec  Memory Limit: 512 MB Submit: 355  Solved: 174 [Submit][Status][Dis ...

  7. 【Project Euler】530 GCD of Divisors 莫比乌斯反演

    [题目]GCD of Divisors [题意]给定f(n)=Σd|n gcd(d,n/d)的前缀和F(n),n=10^15. [算法]莫比乌斯反演 [题解]参考:任之洲数论函数.pdf 这个范围显然 ...

  8. 狄利克雷卷积莫比乌斯反演证明

    狄利克雷卷积简介 卷积这名字听起来挺学究的,今天学了之后发现其实挺朴实hhh. 卷积: "(n)"表示到n的一个范围. 设\(f,g\)是两个数论函数(也就是说,以自然数集为定义域 ...

  9. 2021牛客暑期多校训练营(二) J. Product of GCDs 不动脑子的莫比乌斯反演做法(

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://ac.nowcoder.com/acm/contest/11253/J ...

  10. P4619 [SDOI2018]旧试题(莫比乌斯反演,建图优化三重枚举,三元环计数,神仙好题,超级清晰易懂)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 P4619 [SDOI2018]旧试题(莫比乌斯反演,三元环计数) Problem 计算: ∑i=1A ...

最新文章

  1. onmouseover和onmouseout在GridView中应用
  2. 大数据学习——spark安装
  3. 语音识别:从GMM-HMM到端到端
  4. CXF客户端配置请求超时限制-SocketTimeoutException(Spring配置文件中配置和通过代码进行配置)
  5. python自动生成word版本试卷_Python解决问题:生成包含加减练习题的Word文件
  6. 使用WebBenchmark对webapi进行管理和性能测试
  7. VSCode 用户自定义片段 snippet 基本语法说明
  8. 45个极具冲击力的WordPress摄影网站模板
  9. oracle 查询所有组合,Oracle的组合条件查询
  10. isNaN与parseInt/parseFloat
  11. Tensorflow 循环神经网络03 LSTM长短时记忆神经网络
  12. 帝国cms清除html标签,帝国CMS如何删除清空旧数据让栏目文章ID从1开始起(一)...
  13. 乱码翻译器在线翻译_GAL党的福音——开源生肉翻译器MisakaTranslator正式版发布...
  14. java生成 折线图
  15. ROS路由器脚本文件编辑更新器
  16. 自动生成Makefile的全过程详解2
  17. 西方哲学史的主要发展阶段
  18. XiaoZi's CrackMe
  19. 《Cisco VPP SFC》2、NSH_SFC 安装
  20. 魅族Android7.0刷机包,乐视X900+安卓7.1.2 魅族Flyme6刷机包 最新6.8.3.17R版 紫火20180510更新...

热门文章

  1. java 支付宝 退款_Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝支付)
  2. html图片宽度高度等比例绽放,css图片自动绽放大小,左右,上下居中
  3. 电脑任务管理器快捷键_电脑知识小常识
  4. 服务器磁盘系统,服务器磁盘阵列与操作系统
  5. php查询类似abab,ABAB中的正则表达式匹配编号(必须相同) - php
  6. python监控键盘输入_Python实现监控键盘鼠标操作示例【基于pyHook与pythoncom模块】...
  7. 7-4 二叉树的遍历!(简单) (25 分)
  8. 在数组中找重复数、只出现一次的数或丢失数的题目(Leetcode题解-Python语言)
  9. [蓝桥杯2016决赛]七星填数-next_permutation枚举
  10. java调优方法,jvm监控工具