Hanks博士是BT(Bio-Tech,生物技术)领域的知名专家,他的儿子名叫Hankson。现在,刚刚放学回家的Hankson正在思考一个有趣的问题。今天在课堂上,老师讲解了如何求两个正整数c1和c2的最大公约数和最小公倍数。现在Hankson认为自己已经熟练地掌握了这些知识,他开始思考一个“求公约数”和“求公倍数”之类问题的“逆问题”,这个问题是这样的:已知正整数a0,a1,b0,b1,设某未知正整数x满足:1、 x和a0的最大公约数是a1;2、 x和b0的最小公倍数是b1。Hankson的“逆问题”就是求出满足条件的正整数x。但稍加思索之后,他发现这样的x并不唯一,甚至可能不存在。因此他转而开始考虑如何求解满足条件的x的个数。请你帮助他编程求解这个问题。输入格式 输入第一行为一个正整数n,表示有n组输入数据。接下来的n行每行一组输入数据,为四个正整数a0,a1,b0,b1,每两个整数之间用一个空格隔开。输入数据保证a0能被a1整除,b1能被b0整除。输出格式输出共n行。每组输入数据的输出结果占一行,为一个整数。对于每组数据:若不存在这样的x,请输出0;若存在这样的x,请输出满足条件的x的个数;样例输入2 41 1 96 288 95 1 37 1776样例输出6 2。

程序实现:

//Hanks趣味问题
//WANTING WANG
//2019.03
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
int a0,a1,b0,b1;short n,ans;
inline int gcd(int a,int b){return !b?a:gcd(b,a%b);}
inline int t()
{char ch=getchar();int k=0;while(ch<'0'||ch>'9') ch=getchar();while(ch<='9'&&ch>='0') k=k*10+ch-'0',ch=getchar();return k;
}
inline void P( int n)
{if(n>9) P(n/10);putchar(n%10+'0');return ;
}
int main()
{n=t();while(n--){a0=t();a1=t();b0=t();b1=t();ans=0;for(int i=1;i<=sqrt(b1);i++){if(b1%i==0){if(i%a1==0&&gcd(i/a1,a0/a1)==1&&gcd(b1/i,b1/b0)==1) ans++;}int ii=b1/i;if(b1%ii==0&&ii!=i&&ii%a1==0&&gcd(ii/a1,a0/a1)==1&&gcd(b1/ii,b1/b0)==1) ans++;}P(ans);putchar('\n');}return 0;
}

调试:

测试:

C++解决Hanks趣味问题相关推荐

  1. c++趣味小程序_工具类小程序10天增长103万全复盘

    本文目录: 一.100万小程序用户意味着什么 二.为什么要选择春节期间做增长 三."己亥计划"全复盘 四.活动总结及可复用经验 一.100万小程序用户意味着什么 或许对于很多公司的 ...

  2. “三门问题”背后的概率论原理解析

    前段时间我在知乎上看到这么一个问题:假设你在参加一个抽奖游戏,主持人在三个小碗分下面放了 1 块钱.1 块钱和 10000 块钱的筹码.你选中哪一个,你就可以领到对应的钱.当你选定一个碗之后,主持人翻 ...

  3. 华硕猛禽1080ti_F-22猛禽动力回路的视频分析

    华硕猛禽1080ti The F-22 Raptor has vectored thrust. This means that the engines don't just push towards ...

  4. javaEE面试重点

    Hibernate工作原理及为什么要用? 原理: 1. 读取并解析配置文件 2. 读取并解析映射信息,创建SessionFactory 3. 打开Sesssion 4. 创建事务Transation ...

  5. 利用计算机解决古代数学问题鸡兔同笼,古代趣味数学:鸡兔同笼的4种算法,你都能看懂吗?...

    鸡兔同笼是中国古代的数学名题之一,出自<孙子算经>.书中是这样叙述的:"今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?"这四句话的意思是:有若干只鸡兔同在一个 ...

  6. 07【C语言 趣味算法】最佳存款方案(采用 从后往前 递推解决)

    目录 一.前情回顾 二.Problem:最佳存款方案 2.1 Description of the problem 2.2 Analysis of the problem 2.3 Algorithm ...

  7. Python3趣味系列题1------回溯暴力解决数独问题

    数独问题大家都很熟悉,很喜欢挑战.但解决此问题极其需要耐心和逻辑,正因为此,解决完才会享受到那种成就感的乐趣.本文利用Python3 解决数独问题,虽然过程不一样,但结果还是会让人感受一样的乐趣. 一 ...

  8. 19【C趣味算法 却是用Python解决】国王的失算(数量级太大Dev-C++中无法得出结果),考虑用Python实现

    这道题是一个较为简单的问题(但是还是挺经典的哈!),因此若是不感兴趣的朋友可以忽略哦~ Contents 一.Review 二.New Problem 2.1 Description of the p ...

  9. 转 中国人思维的五大逻辑缺陷,BBC用一部趣味纪录片给解决了

    https://finance.sina.com.cn/money/future/fmnews/2019-02-10/doc-ihqfskcp4004492.shtml 原文在链接里,不懂集合概念和二 ...

最新文章

  1. 看一眼凌晨四点的哈佛,就会明白中国缺什么
  2. Dubbo 源码分析 - 集群容错之 LoadBalance
  3. media player怎么不能拖进度图mp4_榜样力量丨科研路上有难题,学长教你怎么解
  4. hdu1251(trie树)
  5. String类型转换的三种方法分析
  6. openstack单元測试用组件一览
  7. 自学python能干什么-python能干啥
  8. MongoDB(芒果数据库)学习(准备)———环境及图形化工具安装
  9. Python实现Hart协议
  10. pert图java_项目管理之甘特图和工程网络图(PERT图)(一)
  11. python结合mysql 购物管理系统
  12. react项目 上线配置流程
  13. oracle升序和降序同时存在,oracle升序排序 oracle升序和降序
  14. 如何在IDM中设置代理服务器
  15. html在搜索按钮中加放大镜,CSS3 搜索按钮动效 - 放大镜图标变叉叉
  16. 外贸邮箱能群发吗?用哪个外贸邮箱发开发信回复率高?
  17. 计算机32位如何变成64位,我电脑是32位的
  18. Redis(1)入门指令
  19. html map插件,jQuery谷歌地图插件maplace.js
  20. 数据结构知识点总结整理

热门文章

  1. 程序员初学者如何自学编程
  2. Dbus启动问题 Failed to get D-Bus connection: Operation not permitted
  3. 响铃:抖音的敌人不是快手
  4. 熊猫头唱unravel——如何使图片人物表情动起来
  5. html制作日期计划表,【时间计划表】_每日时间计划表
  6. python实战| 爬取虎牙高质量小姐姐私房照!
  7. 构建高可用的方式总结
  8. 7个可以改变一生的自学网站,每天3小时,效果直线上升!
  9. 人大金仓windows 10 安装闪退,改绿色安装方法,
  10. shell中base64编解码的使用