首先对于C不能整除A的状况肯定排除

然后得到B=C/A

然后取G=GCD(A,B)

如果G==1,那么此时B就是解

否则的话,就证明A,B,的最小公倍数肯定不是C,因为其最小公倍数是A*B/G

那么我们就去掉这个公因子,方法是A/G,B*G

即可消去两者公共的倍数,同时还可以保证A*B是一个定值

循环直到G==1为止。。。是。。。是。。是。。。挺神奇的。。。

题意借鉴自https://blog.csdn.net/libin56842/article/details/46442083

https://blog.csdn.net/just_sort/article/details/50983350

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <queue>
#include <vector>
#include <cmath>
#define mem(a, b) memset(a, b, sizeof(a))
using namespace std;
const int maxn = , INF = 0x7fffffff;
typedef long long LL; int gcd(int a, int b)
{
return b==?a:gcd(b, a%b);
} int main()
{
int T;
cin>> T;
while(T--)
{
int a, b, c;
cin>> a >> c;
if(c % a != )
cout<< "NO SOLUTION" <<endl;
else
{
b = c / a;
if(gcd(a, b) == )
cout<< b <<endl;
else
{
while(gcd(a, b) != )
{
int temp = gcd(a, b);
a /= temp;
b *= temp;
}
cout<< b <<endl;
}
} } return ;
}

Benefit UVA - 11889(已知LCM和其中一个数,求另一个数)的更多相关文章

  1. 转 已知两点坐标和半径求圆心坐标程序C++

      数学思想:利用圆方程和直线方程 已知两点坐标和半径求圆心坐标程序 #include <iostream> #include <fstream> #include <c ...

  2. NX二次开发-UFUN已知两个向量方向求夹角角度UF_VEC3_angle_between

    NX9+VS2012 #include <uf.h> #include <uf_ui.h> #include <uf_vec.h> #include <uf_ ...

  3. 【C语言】已知三角形三边长,求三角形面积

    一. 数学基础: 已知三角形的三边,计算三角形面积,需要用到海伦公式: 即p=(a+b+c)/2 二. 算法: 输入三个边长,套用海伦公式计算面积,并输出. 可以先判断是否可以构成三角形,即任意两边之 ...

  4. Tree UVA - 548 已知中序遍历和后序遍历,求这颗二叉树。

    You are to determine the value of the leaf node in a given binary tree that is the terminal node of ...

  5. 又见GCD (已知最大公约数和其中一个数求另一个数)

    #include<cstdio> int f1(int a,int b) //最大公约数 { ) return b; else return f1(b,a%b); } int f2(int ...

  6. ACM题目————已知前序和中序求后序

    #include <iostream> #include <cstring> #include <cstdio> using namespace std; ], z ...

  7. HDU 1710Binary Tree Traversals(已知前序中序,求后序的二叉树遍历)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1710 解题思路:可以由先序和中序的性质得到 : 先序的第一个借点肯定是当前子树的根结点, 那么在 中序 ...

  8. unity 已知cosA和sinA,求A

    和c++中的atan2(y,x)类似,unity中有也Mathf.Atan2(y,x).

  9. 已知一棵完全二叉树,求其节点的个数 要求:时间复杂度低于O(N),N为这棵树的节点个数

    package my_basic.class_4; public class Code_08_CBTNode { // 完全二叉树的节点个数 复杂度低于O(N) public static class ...

随机推荐

  1. day50

    JS基础 一.JS语言介绍 1.概念 浏览器脚本语言 可以编写运行在浏览器上的代码程序 属于解释性.弱语言类型编程语言 2.组成 ES语法:ECMAScript.主要版本ES5和ES6 DOM:文档对 ...

  2. js中var

    js中声明一个变量的时候,建议要加上var.如果不加,除非你知道自己在干什么,否则哪天会吃亏哈哈. 不加var,js会认为你声明的是全局变量. 举个小例子. function test1(){ a = ...

  3. 允许Ubuntu系统下Mysql数据库远程连接

    第一步: vim /etc/mysql/my.cnf找到bind-address = 127.0.0.1 注释掉这行,如:#bind-address = 127.0.0.1 或者改为: bind-ad ...

  4. jsp页面中日期的格式化

            在一次开发中,由于数据库中生日采用的是datetime的数据类型,因此数据库中数据格式为:2017-07-11 00:00:00. 但是,编辑页面中回显生日肯定是不可以显示出时分秒的, ...

  5. vue 使用 proxyTable 解决跨域问题

    1.在 main.js 中,在引入 axios: import axios from 'axios' Vue.config.productionTip = false Vue.prototype.$a ...

  6. uboot启动过程理解

    对于2440而言,启动的方式不多.一般就是外界一个NAND FLASH ,2440内部有个NAND FLASH Controller,会自动把NAND FLASH的前4K拷贝到2440的片内SRAM. ...

  7. Hadoop日记Day14---MapReduce源代码回顾总结

    一.回顾单词统计源码 package counter; import java.net.URI; import org.apache.hadoop.conf.Configuration; import ...

  8. Caffe+Windows 环境搭建收集

    Caffe+Anconda3+VS2015+Win10(64位)环境搭建 Caffe on Windows (Visual Studio 2015+CUDA8.0+cuDNNv5) Win10+VS2 ...

  9. 一步一步来熟悉Akka.Net(一)

    一步一步来熟悉Akka.Net(一) 标签(空格分隔): .netcore 分布式 一.不利flag   好久没写过文章了,翻开前几年写的博客,看到有两个目标"代码生成器"和&qu ...

  10. winform 记事本 剪切 粘贴 全选 撤销

    private void 撤消UToolStripMenuItem_Click(object sender, EventArgs e) { textBox1.Undo(); } private voi ...