Hankson的趣味题




#include <bits/stdc++.h>
#define f first
#define s second
using namespace std;const int N = 50010;
int a, b, c, d;
int prime[N], cnt;
bool vis[N];
pair <int, int > factor[N];
int fcnt;
int res;void init(int n)
{for(int i = 2; i <= n; ++ i){if(!vis[i]) prime[cnt ++] = i;for(int j = 0;j < cnt && i * prime[j] <= n; ++ j){vis[i * prime[j]] = true;if(i % prime[j] == 0) break;}}
}void dfs(int deep, int p)
{if(deep == fcnt) {if( __gcd(p,a) == b &&  p  / __gcd(p,c) * c == d) res ++;return;}for(int i = 0; i <= factor[deep].s; ++ i){dfs(deep + 1,p);p *= factor[deep].f;}
}int main()
{init(N - 1);int T;cin >> T;while(T --){cin >> a >> b >> c >> d;int t = d;fcnt = 0;for(int i = 0; prime[i] * prime[i] <= t; ++ i){if(t % prime[i] == 0){int b = 0;while(t % prime[i] == 0) t /= prime[i], b ++;factor[fcnt ++] = {prime[i],b};}}if(t != 1) factor[fcnt ++] = {t,1};dfs(0,1);cout << res << endl;res = 0;}return 0;
}

用质因子去分解质因数相关推荐

  1. 判断质素和分解质因数

    1.判断一个数是否是质素 对正整数n,如果用2到根号n之间的所有整数去除,均无法整除,则n为质数. /*** 判断一个数是否是质素* @param n 判断的数* @return*/public st ...

  2. 搞懂质数,质因子,互质,最大公约数,最小公倍数.

    1.质数: 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 借鉴y总的代码: bool is_prime(int n){     if(n<2)  return fals ...

  3. python编写判断素数的函数并找出前五个摩尼森数_五十八、如何对一个数进行分解质因数...

    「@Author:Runsen」 ❝ 编程的本质来源于算法,而算法的本质来源于数学,编程只不过将数学题进行代码化.「---- Runsen」 ❞ 先问你们一个小学问题:「什么是质因数?小学是对一个数进 ...

  4. 功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )

    一.题目 描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 ) 数据范围: 1≤n≤2×109+14 1 \le n \le 2 ...

  5. 阶乘分解质因数[经典题组合数学枚举质因子]

    引入问题: 给定整数NNN,试把阶乘 N!N!N! 分解质因数,按照算术基本定理的形式输出分解结果中的 pip_ipi​ 和 cic_ici​即可. N!N!N!分解质因数后的结果,共若干行,每行一对 ...

  6. PAT甲级1059 Prime Factors :[C++题解]分解质因子

    文章目录 题目分析 题目链接 题目分析 暴力求质因数 下面i就是质因子,s是质因子i的阶数. 暴力的时间复杂度O(n),会超时 void divide(int n){for(int i=2;i< ...

  7. ZZULIOJ 1071:分解质因子

    分解质因子 题目描述 将一个正整数分解质因数,例如,输入90,输出2 3 3 5. 输入 输入一个正整数n(2<=n<=2000). 输出 从小到大输出n的所有质因子,每两个数之间空一格. ...

  8. 1072: 分解质因子

    时间限制: 1 Sec  内存限制: 128 MB 题目描述 将一个正整数分解质因数,例如,输入90,输出2 3 3 5. 输入 输入一个正整数n(2<=n<=2000). 输出 从小到大 ...

  9. ZZULIOJ:1071: 分解质因子

    1071: 分解质因子 时间限制: 1 Sec  内存限制: 128 MB [状态] [讨论版] [提交] [命题人:admin] 题目描述 将一个正整数分解质因数,例如,输入90,输出2 3 3 5 ...

最新文章

  1. python 2x list 里面的中文打印效果为unicode 编码 的处理方法
  2. Des和Base64的Util
  3. Spring框架bean的注解管理方法之一 使用注解生成对象
  4. 【程序员比赛】CISCN 2021 ezj4va与Fix思路
  5. Codeforces-449B-Jzzhu and Cities(最短路变形)
  6. Python|队列Queue
  7. Fegion-3覆写Fegion的默认配置及Fegion的日志
  8. 未能加载包studio package_Xrepo:一个现代化的跨平台 C/C++ 包管理器
  9. python csv性能_Python 使用和高性能技巧总结
  10. java.nio.ByteBuffer用法小结
  11. css-结构伪类选择器
  12. html5 数据初始化,使用HTML5中的element.dataset操作自定义data-*数据
  13. 5分钟学会Markdown语法,在GitHub上写出漂亮文本,提升别人阅读体验
  14. c语言 poll,c语言 linux 中 poll 的参数
  15. 如何调节电脑显示屏来保护双眼的小技巧
  16. 关于个人博客转移的那些事
  17. JAVA学习48_Eclipse错误: 找不到或无法加载主类或项目无法编译10种解决大法!
  18. 使用python统计excel两文件数据,excel公式为countif
  19. mixamo骨骼_UE4骨骼重定向(二)借助插件Mixamo Converter快速操作Mixamo网站资源
  20. python爬虫入门-环境配置

热门文章

  1. 科普| 3D视觉技术正在改变我们的生活
  2. 【OpenCV 4开发详解】图像仿射变换
  3. Eclipse 最常用的 10 组快捷键,个个牛逼!
  4. 简单易上手编译FFmpeg
  5. Python3经典100例(③)
  6. 怎样在nexus 中 搜索到远程maven仓库中的jar 文件
  7. 给你的网站穿上外衣 - HTTPS 免费部署指南
  8. Ambari Server网口带宽占用率很高问题的分析和解决办法
  9. 【转】【iOS知识学习】_视图控制对象生命周期-init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear等的区别及用途...
  10. Mac os 安装 MySQL和MySQL-Python