题意

题目链接

Sol

一道咕咕咕了好长时间的题

题解可以看这里

#include<bits/stdc++.h>
#define LL long long
using namespace std;
const int MAXN = 1e7 + 5e6 + 10,  mod = 1e9 + 7, mod2 = 1e9 + 6;
int N, M, vis[MAXN], prime[MAXN], mu[MAXN], f[MAXN], tot;
int add(int x, int y) {if(x + y < 0) return x + y + mod;return x + y >= mod ? x + y - mod : x + y;
}
int mul(int x, int y) {return 1ll * x * y % mod;
}
int fp(int a, int p) {int base = 1;while(p) {if(p & 1) base = mul(base, a);a = mul(a, a); p >>= 1;}return base;
}
void sieve(int N) {vis[1] = 1; mu[1] = 1;for(int i = 2; i <= N; i++) {if(!vis[i]) prime[++tot] = i, mu[i] = -1;for(int j = 1; j <= tot && i * prime[j] <= N; j++) {vis[i * prime[j]] = 1;if(!(i % prime[j])) {mu[i * prime[j]] = 0; break;}else mu[i * prime[j]] = -mu[i];}}for(int i = 1; i <= tot; i++) for(LL j = prime[i]; j <= N; j *= prime[i])f[j] =prime[i];for(int i = 1; i <= N; i++) if(!f[i]) f[i] = 1;
}
signed main() {cin >> N >> M;sieve(1e7 + 5e6);//for(int i = 1; i <= 100; i++) printf("%d %d\n", i, f[i]);int ans = 1;for(int i = 1; i <= N; i++) {if(f[i] == 1) continue;ans = mul(ans, fp(f[i], 1ll * (N / i) * (M / i) % mod2));}cout << ans;return 0;
}
/*
100000 50000 200 300
100 2 1 1
*/

转载于:https://www.cnblogs.com/zwfymqz/p/10221710.html

Hackerrank GCD Product(莫比乌斯反演)相关推荐

  1. P2257 YY的GCD (莫比乌斯反演)

    [题目链接] https://www.luogu.org/problemnew/show/P2257 // luogu-judger-enable-o2 /* -------------------- ...

  2. P2257-YY的GCD【莫比乌斯反演】

    正题 题目链接:https://www.luogu.com.cn/problem/P2257 题目大意 给出n,mn,mn,m,求∑i=1n∑j=1m[gcd(i,j)∈p]\sum_{i=1}^n\ ...

  3. hdu1695 GCD(莫比乌斯反演)

    题意:求(1,b)区间和(1,d)区间里面gcd(x, y) = k的数的对数(1<=x<=b , 1<= y <= d). 知识点: 莫比乌斯反演/*12*/ 线性筛求莫比乌 ...

  4. 【bzoj 2820】YY的GCD(莫比乌斯反演)

    传送门biu~ 参考博客:莫比乌斯反演 #include<bits/stdc++.h> #define N 10000000 using namespace std; int T,n,m, ...

  5. Luogu P6055 [RC-02] GCD(莫比乌斯反演,杜教筛)(这题乐死我了,真就图一乐呗)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://www.luogu.com.cn/problem/P6055 Prob ...

  6. Zap与YY的GCD(莫比乌斯反演)

    Bzoj1101: Zap 题目大意:求多少对x,y使得gcd(x,y)=d,x<=m,y<=n. 首先将范围都除以d,这样相当于求gcd(x,y)==1的个数. 莫比乌斯函数一个很重要的 ...

  7. P4450-双亲数,P5221-Product,P6055-[RC-02]GCD【莫比乌斯反演,杜教筛】

    除了最后一题都比较简单就写一起了 P4450-双亲数 题目链接:https://www.luogu.com.cn/problem/P4450 题目大意 给出A,B,dA,B,dA,B,d求有多少对(a ...

  8. bzoj 2820: YY的GCD(莫比乌斯反演)

    2820: YY的GCD Time Limit: 10 Sec  Memory Limit: 512 MB Submit: 2111  Solved: 1137 [Submit][Status][Di ...

  9. BZOJ 2820 YY的GCD(莫比乌斯反演)

    Description 神犇YY虐完数论后给傻×kAc出了一题给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对,kAc这种傻×必 ...

最新文章

  1. java sleep方法_百战程序员:java线程的休眠和回复
  2. Rsync的使用方法
  3. 2018暑假第一周总结(7.9-7.15)
  4. JDK1.7 深入理解 LinkedHashMap
  5. 数据可视化的基础知识·翻译完成
  6. 【算法】栈实现综合表达式计算
  7. linux上的一些命令
  8. 为什么 Netflix 这么强?网飞 CEO 哈斯廷斯跟陆奇摊牌了
  9. 利用idea构建hibernate
  10. css background 旋转_纯CSS画小电视
  11. Visio使用技巧备忘录
  12. 【学习目录】天天生鲜项目页面设计
  13. 坚果pro2官方rom_锤子坚果Pro2刷机包_原版升级包 锤子坚果Pro2线刷包_官方固件rom包下载...
  14. VS2010应用程序的打包与图标设置
  15. 电脑桌面图标有阴影怎么办
  16. PageRank 笔记
  17. html文标题党,教你成为微信公众号推文标题党
  18. 学习博客:【JavaScript】jQuery
  19. 上网课的心得体会1000字_大学生上网课心得体会
  20. mysql 索引使用测试(group by、order by)

热门文章

  1. 在JSP页面中显示动态时间
  2. char 类型的数组转换到CSting
  3. .Net开发时有没有好的页面开发框架?
  4. opencv_IplImage未定义的标识符解决
  5. animate用法 js原生_用 原生Javascript 创建带动画的固顶导航菜单
  6. 功率谱 魏凤英统计程序_频谱、能量谱、功率谱、功率谱估计
  7. 循环队列c语言的实现,循环队列的C语言实现
  8. python分片是什么_python中的分片
  9. 允许用户把多个作业同时提交给计算机,2005年7月操作系统试题和答案
  10. 获取图像的梯度,方向和方向梯度图像