正题

评测记录:https://www.luogu.org/recordnew/lists?uid=52918&pid=P1072


题目大意

a1=gcd(a0,x)a1=gcd(a0,x)

a_1=gcd(a_0,x)

b1=gcd(b0,x)b1=gcd(b0,x)

b_1=gcd(b_0,x)
求 xxx


解题思路

如果

a1=gcd(a0,x)" role="presentation">a1=gcd(a0,x)a1=gcd(a0,x)

a_1=gcd(a_0,x)
所以 x=ka∗a1x=ka∗a1x=k_a*a_1

b1=gcd(b0,x)b1=gcd(b0,x)

b_1=gcd(b_0,x)
所以 x=b1/kbx=b1/kbx=b_1/k_b
而且 ka,kbka,kbk_a,k_b都是整数,所以 xxx是a1" role="presentation" style="position: relative;">a1a1a_1的倍数也是 b1b1b_1的因子。
所以暴力 b1−−√b1\sqrt {b_1},然后用 a1a1a_1剪枝就好了。


code

#include<cstdio>
#include<algorithm>
#define gcd(x,y) __gcd(x,y)
#define lcm(x,y) x*y/__gcd(x,y)
using namespace std;
int t,a0,a1,b0,b1,q,p,ans;
int main()
{scanf("%d",&t);while(t--){scanf("%d%d%d%d",&a0,&a1,&b0,&b1);ans=0;q=a0/a1;p=b1/b0;for(int i=1;i*i<=b1;i++){if(!(b1%i)){ans+=(!(i%a1)&&gcd(i/a1,p)==1&&gcd(q,b1/i)==1);int k=b1/i;if(i==k) continue;ans+=(!(k%a1)&&gcd(k/a1,p)==1&&gcd(q,b1/k)==1);}}printf("%d\n",ans);}
}

P1072-Hankson的趣味题【数论,gcd】相关推荐

  1. 数论基础--洛谷P1072 Hankson 的趣味题

    题目大意: 给出 gcd(x,a0)=a1 lcm(x,b0)=b1 两个式子,a0,a1,b0,b1是已知的,问有多少个x满足情况. 题解: 首先需要有两个前置知识,证明的话看这篇博客: https ...

  2. 洛谷P1072 Hankson 的趣味题(题解)

    https://www.luogu.org/problemnew/show/P1072(题目传送) 数学的推理在编程的体现越来越明显了.(本人嘀咕) 首先,我们知道这两个等式: (a0,x)=a1,[ ...

  3. Hankson的趣味题

    Hankson的趣味题 时间限制: 1 Sec  内存限制: 128 MB [提交][状态][讨论版] 题目描述 已知正整数a0,a1,b0,b1.设某未知正整数x 满足: 1. x 和a0 的最大公 ...

  4. 约数——Hankson的趣味题

    Hankson的趣味题 Hanks博士是BT(Bio-Tech,生物技术)领域的知名专家,他的儿子名叫Hankson. 现在,刚刚放学回家的Hankson正在思考一个有趣的问题. 今天在课堂上,老师讲 ...

  5. java蓝桥杯练习 Hankson的趣味题

    java蓝桥杯练习 Hankson的趣味题 资源限制 时间限制:1.0s 内存限制:64.0MB 问题描述 Hanks 博士是BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫Hank ...

  6. 洛谷1072 Hankson 的趣味题

    https://www.luogu.org/problem/show?pid=1072 Hankson 的趣味题 正解:素数筛+因数分解+乘法原理.简单地来说就是我不会! 但是考虑: 1.从b1入手, ...

  7. P1072 [NOIP2009 提高组] Hankson 的趣味题

    题目描述 Hanks 博士是 BT(Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson.现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题. 今天在课堂上,老师讲解了 ...

  8. d778: NOIP2009 2.Hankson的趣味题

    内容 : Hanks 博士是 BT (Bio-Tech,生物技术)  领域的知名专家,他的儿子名叫 Hankson.现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题.       今天在课 ...

  9. [NOIp 2009]Hankson的趣味题

    Description Hanks 博士是 BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson.现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题. 今天在课 ...

  10. 【noip】HankSon的趣味题

    描述 Hanks 博士是 BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson.现 在,刚刚放学回家的 Hankson 正在思考一个有趣的问题. 今天在课堂上,老师讲解了 ...

最新文章

  1. ​Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
  2. (EM算法)The EM Algorithm
  3. 导语3——node以及npm
  4. [转]揭开正则表达式的神秘面纱
  5. C# teacher类【C#】
  6. gcc/g++ 使用 tricks
  7. UReport2 报表设计器 在线表格
  8. android Cursor用法
  9. 14. 使用reserve避免不必要的内存分配
  10. paip.提升中文分词准确度---新词识别
  11. XILINX FPGA数字信号处理——8、FIR滤波器和IIR滤波器原理及实现
  12. Codeproject收藏
  13. ubuntu20.04离线安装rabbitvcs
  14. 关于当前安全设置不允许下载文件问题的解决
  15. 中国大茴香行业利润及销量增长情况报告(新版)2021-2026年
  16. 工业交换机的内部组成是什么?
  17. Win11 22000.918(KB5016691)正式版发布,解决一系列问题!
  18. c语言是静态语言python语言是脚本语言吗_C语言还是Python语言哪个更好?
  19. 一款好看的秒表计时器
  20. linux内核那些事之内存规整(memory compact)

热门文章

  1. long 对应oracle,【转】oracle number与java中long、int的对应
  2. jenkins java反序列化_Jenkins “Java 反序列化”过程远程命令执行漏洞
  3. bios是固定在微型计算机上的一块RoM,计算机硬件笔试试题
  4. 下列选项中 采用边界值平滑_数据挖掘期末考题(答案).doc
  5. php判断数组下标,php判断json或者数组格式与给定格式是否一致
  6. 软件构造学习笔记-第七周
  7. 查漏补缺方为上策!!两万六字总结vue的基本使用和高级特性,周边插件vuex和vue-router任你挑选
  8. C++ class实现十字链表存储的图(完整代码)
  9. C++string容器-字符存取
  10. Calendar Game POJ - 1082(关于日历的博弈问题)