博客
关于我
16.最小公倍数
阅读量:133 次
发布时间:2019-02-27

本文共 563 字,大约阅读时间需要 1 分钟。

为了求正整数A和B的最小公倍数,可以使用它们的最大公约数。通过公式:最小公倍数 = (A × B) / 最大公约数。我们可以使用辗转相除法来高效计算最大公约数。

方法1:暴力求解

虽然效率较低,但对于较小的数值来说是可行的。具体步骤如下:

  • 找到较大的数m。
  • 从m开始,逐个检查是否能被A和B整除。
  • 一旦找到满足条件的m,输出它作为最小公倍数。
  • 方法2:利用最大公约数

  • 使用辗转相除法计算A和B的最大公约数。
  • 应用公式计算最小公倍数:(A × B) / GCD(A, B)。
  • 代码实现

    #include 
    using namespace std;int gcd(int a, int b) { while (b != 0) { int temp = b; b = a % b; a = temp; } return a;}int main() { int a, b; while (cin >> a >> b) { cout << a * b / gcd(a, b) << endl; } return 0;}

    示例

    • 输入:5 7

    • 输出:35

    • 输入:4 6

    • 输出:12

    这种方法高效且准确,适用于所有正整数情况。

    转载地址:http://tpbb.baihongyu.com/

    你可能感兴趣的文章
    OA项目之我的审批(会议查询&会议签字)
    查看>>
    OA项目之项目简介&会议发布
    查看>>
    ObjC的复制操作
    查看>>
    Object c将一个double值转换为时间格式
    查看>>
    object detection之Win10配置
    查看>>
    object detection训练自己数据
    查看>>
    object detection错误Message type "object_detection.protos.SsdFeatureExtractor" has no field named "bat
    查看>>
    object detection错误之Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
    查看>>
    object detection错误之no module named nets
    查看>>
    Object of type 'ndarray' is not JSON serializable
    查看>>
    Object Oriented Programming in JavaScript
    查看>>
    object references an unsaved transient instance - save the transient instance before flushing
    查看>>
    Object 类的常见方法有哪些?
    查看>>
    Object-c动态特性
    查看>>
    Object.assign用法
    查看>>
    Object.create
    查看>>
    Object.defineProperty详解
    查看>>
    Object.keys()的详解和用法
    查看>>
    objectForKey与valueForKey在NSDictionary中的差异
    查看>>
    Objective - C 小谈:消息机制的原理与使用
    查看>>