好吧,被大白书上的入门题给卡了。=_=||

已知LCM(A, B) = C,已知A和C,求最小的B

一开始我想当然地以为B = C / A,后来发现这时候的B不一定满足gcd(A, B) = 1

A要不断地除去gcd(A, B),直到满足gcd(A, B) = 1

B最后就应该乘上A除去的值

 1 #include <cstdio>
 2
 3 typedef long long LL;
 4
 5 LL gcd(LL a, LL b)
 6 { return b == 0 ? a : gcd(b, a%b); }
 7
 8 int main()
 9 {
10     int T;
11     scanf("%lld", &T);
12     LL a, c;
13     while(T--)
14     {
15         scanf("%lld%lld", &a, &c);
16         if(c % a == 0)
17         {
18             LL b = c / a;
19             LL g = gcd(a, b);
20             LL t = 1;
21             while(g != 1)
22             {
23                 a /= g;
24                 t *= g;
25                 g = gcd(a, b);
26             }
27             printf("%lld\n", b*t);
28         }
29         else puts("NO SOLUTION");
30     }
31
32     return 0;
33 }

代码君

转载于:https://www.cnblogs.com/AOQNRMGYXLMV/p/4345622.html

UVa 11889 (GCD) Benefit相关推荐

  1. UVa 11388 - GCD LCM

    题目大意:给出两个数的最大公约数G和最小公倍数L,求出这两个数. 根据a*b = GCD * LCM,然后枚举判断就好了. 1 #include <cstdio> 2 typedef un ...

  2. UVA 12716 GCD XOR(数论+枚举+打表)

     题意:给你一个N,让你求有多少组A,B,  满足1<= B <= A <= N, 且 gcd(A,B) = A XOR B. 思路:首先我们能够得出两个结论: A-B > ...

  3. UVA 11426 GCD - Extreme (II) (欧拉函数)

    题目传送门:点击打开链接 假设a.b(a<b)互质,那么gcd(a,b)=1,这样当i循环到a.j循环到b时就会向结果中+1,而i循环到2*a.j循环到2*b时就会向结果中+2(gcd(2*a, ...

  4. UVA Magical GCD

    Magical GCD 题意:给定一个数列,求一个子列,该子列的最大公约数乘上子列长度的值最大,输出最大值.数列的大小是100000,这些数的大小是1-10^12. 解题思路:一开始想的是用暴力,但数 ...

  5. 训练指南第二章-基础问题

    训练指南第二章-基础问题 P170 2 / 4 Problem A UVA 10943 How do you add? 1 / 2 Problem B UVA 10780 Again Prime? N ...

  6. kuangbin带你飞专题合集

    题目列表 [kuangbin带你飞]专题一 简单搜索 [kuangbin带你飞]专题二 搜索进阶 [kuangbin带你飞]专题三 Dancing Links [kuangbin带你飞]专题四 最短路 ...

  7. 算法学习经典例题整理

    陆续会对本篇博客进行更新! 搜索:https://vjudge.net/contest/292597 区间DP:https://vjudge.net/contest/293892 树状背包:https ...

  8. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

  9. python输入国家显示首都名_Java各国首都列表

    Java代码常用写法总结 1.字符串是否为空判断 以下是java 判断字符串是否为空的四种方法:方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||" ...

最新文章

  1. 点击改变div高度_css实现div两列布局(两种方法)
  2. java 获取linux mac_java在linux获得ip地址和mac
  3. 服务器邮箱群发,独立IP独立账号日发万封的邮件群发服务器
  4. Floyd求传递闭包
  5. 机器学习基于skcilearn tensorflow电子书_Tensorflow机器学习模型的跨平台上线
  6. FLV文件格式(Z)(转载)
  7. opencv 识别机车
  8. Unity2020.1新功能探路:编辑器相关更新
  9. 基于Spring Security的认证方式_SpringBoot认识_Spring Security OAuth2.0认证授权---springcloud工作笔记121
  10. Hadoop 源码目录树
  11. 用MySQL-zrm来备份和恢复MySQL数据库
  12. python筛选时间段_django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
  13. PNAS | 人类线粒体的双亲遗传模式
  14. java正则表达式是什么6_进阶Java编程(6)正则表达式
  15. 数据分析-用python分析中国五大城市的PM2.5值(ols建立回归模型)
  16. 计算机视觉 OpenCV【六:应用之颜色检测】
  17. Fiddler抓包工具报:The system ptoxy changed. Click to reenable capturing
  18. 吴恩达机器学习笔记-无监督学习
  19. 20190831每日一句 超越你的舒适区,突破自我,继续前进!
  20. 如何在MSDN上下载操作系统

热门文章

  1. python进阶11并发之七多种并发方式的效率测试
  2. 走进我的交易室06_交易
  3. 我月薪3W,却不用熬夜加班做报表,这个养老工具,你一定要知道
  4. python爬取+BI分析5000条内衣数据,发现妹子最爱这款文胸
  5. 手把手教你最好用的数据分析方法,会用的没几个
  6. python杨辉三角_python中的部分高级特性
  7. Chess DP 思维题
  8. 方程求根(牛顿迭代法)
  9. Python——如何屏蔽函数内部的print输出
  10. 机器学习 Machine Learning中向量化矩阵化的技巧