数论基础--洛谷P1072 Hankson 的趣味题
题目大意:
给出
gcd(x,a0)=a1
lcm(x,b0)=b1
两个式子,a0,a1,b0,b1是已知的,问有多少个x满足情况。
题解:
首先需要有两个前置知识,证明的话看这篇博客:
https://blog.csdn.net/nuclearsubmarines/article/details/77603154
1.gcd(x,y) * lcm(x,y)=x * y;
2.gcd(x,y)=z , gcd(x/z,y/z)=1
其实记住可以直接用的
这是两个式子变形的过程。得出最后两个公式。
这样的话,x必然是小于b1的,况且b1可以整除x,所以x一定是b1的因子,我们通过枚举b1的所有因子,来判断x是否可以整除a1,并且满足这两个式子,如果满足则答案加一。
注意,我们枚举的时候只需要枚举sqrt(b1),我们如果的到一个因子,那么另外一个可以用b1/x得出。
代码:
/*Keep on going Never give up*/
#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
const int maxn = 1e5+10;
const int MaxN = 0x3f3f3f3f;
const int MinN = 0xc0c0c00c;
typedef long long ll;
const int mod = 100000000;
using namespace std;int main(){int t;cin>>t;while(t--){int a,b,c,d;cin>>a>>b>>c>>d;int ans=0;for(int x=1;x*x<=d;x++){if(d%x==0){if(x%b==0&&__gcd(x/b,a/b)==1&&__gcd(d/c,d/x)==1) ans++;int xx=d/x;if(xx==x) continue;if(xx%b==0&&__gcd(xx/b,a/b)==1&&__gcd(d/c,d/xx)==1) ans++;}}cout<<ans<<endl;}return 0;
}
数论基础--洛谷P1072 Hankson 的趣味题相关推荐
- 洛谷P1072 Hankson 的趣味题(题解)
https://www.luogu.org/problemnew/show/P1072(题目传送) 数学的推理在编程的体现越来越明显了.(本人嘀咕) 首先,我们知道这两个等式: (a0,x)=a1,[ ...
- 洛谷1072 Hankson 的趣味题
https://www.luogu.org/problem/show?pid=1072 Hankson 的趣味题 正解:素数筛+因数分解+乘法原理.简单地来说就是我不会! 但是考虑: 1.从b1入手, ...
- 洛谷 1072 Hankson 的趣味题——质因数界限讨论
题目:https://www.luogu.org/problemnew/show/P1072 思路是把每个数质因数分解,答案对于每个质因数的次数有选择的区间,通过这个计算. 指数的限制就是上限是b1, ...
- Hankson的趣味题
Hankson的趣味题 时间限制: 1 Sec 内存限制: 128 MB [提交][状态][讨论版] 题目描述 已知正整数a0,a1,b0,b1.设某未知正整数x 满足: 1. x 和a0 的最大公 ...
- 约数——Hankson的趣味题
Hankson的趣味题 Hanks博士是BT(Bio-Tech,生物技术)领域的知名专家,他的儿子名叫Hankson. 现在,刚刚放学回家的Hankson正在思考一个有趣的问题. 今天在课堂上,老师讲 ...
- java蓝桥杯练习 Hankson的趣味题
java蓝桥杯练习 Hankson的趣味题 资源限制 时间限制:1.0s 内存限制:64.0MB 问题描述 Hanks 博士是BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫Hank ...
- P1072 [NOIP2009 提高组] Hankson 的趣味题
题目描述 Hanks 博士是 BT(Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson.现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题. 今天在课堂上,老师讲解了 ...
- 洛谷P4015 运输问题 网络流24题
看了下SPFA题解,一个一个太麻烦了,另一个写的很不清楚,而且注释都变成了"????"不知道怎么过的,于是自己来一发SPFA算法. Part 1.题意 M 个仓库,卖给 N 个商店 ...
- CODEVS 1172 Hankson 的趣味题
题目描述 Description Hanks 博士是BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫Hankson.现 在,刚刚放学回家的Hankson 正在思考一个有趣的问题. 今 ...
最新文章
- 以太网单播、组播、广播
- 如何用c 语言编写阶乘程序,求10000的阶乘(c语言代码实现)
- python闯关_99题--Python闯关
- java单位数_java – 优化代码以查找给定数量N的阶乘的单位数
- 如何在软件发布计划中自动化语义化版本与变更日志
- 江湖有故人,欢迎来到程序员的江湖
- 网工学习笔记——reboot
- 基于matlab的高等数学实验,《基于MATLAB高等数学实验》出版发行
- java做抽奖小程序_随机抽奖小程序
- [JAVA毕业设计]高铁在线购票系统源码获取和系统演示
- springboot整合
- 计算机组策略主要功能,组策略的作用和功能
- PHP数据库CURD接口与实现(接口实战)
- 可以嵌入ppt的课堂点名器_学点云课堂:小班课应用场景,饱受青睐的秘诀
- Altium Designer19 多层板设计教程
- typora 配置 smms 图床
- QQ飞车手游飞越狸想怎么获得
- Android :高德地图demo
- 如何提高本地文件上传至百度云的速度_【软件推荐】满速下载软件,说出来你可能不信最高速度达到150m/s...
- 软件开发中的需求分析