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

    你可能感兴趣的文章
    python中什么是实例方法_在Python中创建实例方法对象的不同方法
    查看>>
    Python中使用cutecharts实现简单的手绘风格的图表
    查看>>
    python中使用dxfgrabber,解析dxf文件信息生成obj文件
    查看>>
    Python中使用ncmbot玩转网易云音乐
    查看>>
    Python中使用PIL快速实现二值图
    查看>>
    Python中使用PIL快速实现灰度图
    查看>>
    Python中使用pip install ncmbot时各种错误解决办法
    查看>>
    Python中使用requests和parsel爬取喜马拉雅电台音频
    查看>>
    Python中使用turtle绘制多个同心圆
    查看>>
    Python中使用turtle绘制棋盘详解
    查看>>
    Python中使用wordcloud生成漂亮的中文词云
    查看>>
    Python中使用wxpy定时机器人给微信好友发送每日一文
    查看>>
    Python中使用zip()并行迭代
    查看>>
    Python中使用推导式创建序列
    查看>>
    Python中信号处理程序和atexit处理程序的调用
    查看>>
    Python中关于txt的简单读写模式与操作
    查看>>
    Python中关于类和函数的初体验之"__init__"和"__str__"不是"_init_"和"_str_"
    查看>>
    python中函数接受参数为*args, **kwargs怎么办
    查看>>
    Python中切片的高效迭代
    查看>>
    python中列表乘法、eval、lambda、hasattr、assert、*(星)等的用法
    查看>>