博客
关于我
【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/

    你可能感兴趣的文章
    MySql中mvcc学习记录
    查看>>
    mysql中null和空字符串的区别与问题!
    查看>>
    MySQL中ON DUPLICATE KEY UPDATE的介绍与使用、批量更新、存在即更新不存在则插入
    查看>>
    MYSQL中TINYINT的取值范围
    查看>>
    MySQL中UPDATE语句的神奇技巧,让你操作数据库如虎添翼!
    查看>>
    Mysql中varchar类型数字排序不对踩坑记录
    查看>>
    MySQL中一条SQL语句到底是如何执行的呢?
    查看>>
    MySQL中你必须知道的10件事,1.5万字!
    查看>>
    MySQL中使用IN()查询到底走不走索引?
    查看>>
    Mysql中使用存储过程插入decimal和时间数据递增的模拟数据
    查看>>
    MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
    查看>>
    mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
    查看>>
    mysql中出现Unit mysql.service could not be found 的解决方法
    查看>>
    mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
    查看>>
    Mysql中各类锁的机制图文详细解析(全)
    查看>>
    MySQL中地理位置数据扩展geometry的使用心得
    查看>>
    Mysql中存储引擎简介、修改、查询、选择
    查看>>
    Mysql中存储过程、存储函数、自定义函数、变量、流程控制语句、光标/游标、定义条件和处理程序的使用示例
    查看>>
    mysql中实现rownum,对结果进行排序
    查看>>
    mysql中对于数据库的基本操作
    查看>>