博客
关于我
【ACM】最小公倍数LCM
阅读量:539 次
发布时间:2019-03-09

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

计算两个正整数A和B的最小公倍数(LCM)

  • 问题理解最小公倍数是指两个数都能整除它的最小数。在数学中,最小公倍数与最大公约数(GCD)有关系。已知公式:LCM(A, B) = (A × B) / GCD(A, B)

  • 使用欧几里得算法计算GCD欧几里得算法是一种高效的方法,通过反复应用除法来减小两个数的大小,最终找到它们的最大公约数。

  • 代码实现

    • 编写一个用于计算GCD的函数。
    • 使用输入输出流读取两个整数a和b。
    • 计算GCD,然后使用公式计算LCM。
    • 输出计算结果。
    1. 代码示例
    2. #include 
      using namespace std;long long gcd(long long x, long long y) { while (y != 0) { long long temp = y; y = x % y; x = temp; } return x;}int main() { long long a, b; cout << "输入两个整数a和b:"; cin >> a >> b; long long gcd_val = gcd(a, b); long long lcm = (a * b) / gcd_val; cout << "最小公倍数是:" << lcm << endl; return 0;}
      1. 备注
        • 使用long long类型以应对大数运算。
        • 欧几里得算法确保计算高效,时间复杂度为O(log(min(A,B))).
        • 样例输入:30 105,结果为210。

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

    你可能感兴趣的文章
    MSEdgeDriver (Chromium) 不适用于版本 >= 79.0.313 (Canary)
    查看>>
    msf
    查看>>
    MSSQL数据库查询优化(一)
    查看>>
    MSSQL日期格式转换函数(使用CONVERT)
    查看>>
    MSTP多生成树协议(第二课)
    查看>>
    MSTP是什么?有哪些专有名词?
    查看>>
    Mstsc 远程桌面链接 And 网络映射
    查看>>
    Myeclipse常用快捷键
    查看>>
    MyEclipse用(JDBC)连接SQL出现的问题~
    查看>>
    myeclipse的新建severlet不见解决方法
    查看>>
    MyEclipse设置当前行背景颜色、选中单词前景色、背景色
    查看>>
    MyEclipse配置SVN
    查看>>
    MTCNN 人脸检测
    查看>>
    MyEcplise中SpringBoot怎样定制启动banner?
    查看>>
    MyPython
    查看>>
    MTD技术介绍
    查看>>
    MySQL
    查看>>
    MySQL
    查看>>
    mysql
    查看>>
    MTK Android 如何获取系统权限
    查看>>