博客
关于我
【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 聚簇索引&&二级索引&&辅助索引
    查看>>
    Mysql 脏页 脏读 脏数据
    查看>>
    mysql 自增id和UUID做主键性能分析,及最优方案
    查看>>
    Mysql 自定义函数
    查看>>
    mysql 行转列 列转行
    查看>>
    Mysql 表分区
    查看>>
    mysql 表的操作
    查看>>
    mysql 视图,视图更新删除
    查看>>
    MySQL 触发器
    查看>>
    mysql 让所有IP访问数据库
    查看>>
    mysql 记录的增删改查
    查看>>
    MySQL 设置数据库的隔离级别
    查看>>
    MySQL 证明为什么用limit时,offset很大会影响性能
    查看>>
    Mysql 语句操作索引SQL语句
    查看>>
    MySQL 误操作后数据恢复(update,delete忘加where条件)
    查看>>
    MySQL 调优/优化的 101 个建议!
    查看>>
    mysql 转义字符用法_MySql 转义字符的使用说明
    查看>>
    mysql 输入密码秒退
    查看>>
    mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
    查看>>
    mysql 里对root及普通用户赋权及更改密码的一些命令
    查看>>