[考前速记] 最大公约数与最大公倍数

最大公约数

cpp 复制代码
int gcd(int a,int b){
    if (b==0)return a;
    else return gcd(b,a%b);
}

熟练了可以写成:

cpp 复制代码
int gcd(int a,int b){
    return b ? gcd(b,a%b):a;
}

值得注意的是:让a和b均为非负数,可以使用algorithm下的abs(int x)和cmath下的fabs(double x);

最大公倍数是在最大公约数的基础上:

最大公倍数等于

cpp 复制代码
a*b/gcd(a,b)

但由于a*b可能溢出,因此可以修改为

cpp 复制代码
a/gcd(a,b)*b;
相关推荐
lzksword3 分钟前
C++ Builder XE OpenDialog1打开多文件并显示xls与xlsx二种格式文件
java·前端·c++
niceffking33 分钟前
C++内部类的ISO约定和语法细节
开发语言·c++
艾莉丝努力练剑1 小时前
【脉脉】AI创作者崛起:掌握核心工具,在AMA互动中共同成长
运维·服务器·c++·人工智能·安全·企业·脉脉
码界奇点1 小时前
基于ASP.NET Core的内容管理系统设计与实现
c++·后端·车载系统·毕业设计·asp.net·源代码管理
2401_883035462 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
91刘仁德3 小时前
C++ 内存管理
android·c语言·数据结构·c++·经验分享·笔记·算法
老赵的博客3 小时前
qwebengineview 锲入网页并关闭
c++
biter down3 小时前
C++ 单例模式:饿汉与懒汉模式
开发语言·c++·单例模式
sycmancia3 小时前
C++——C++中的类型识别
开发语言·c++
我星期八休息4 小时前
深入理解哈希表
开发语言·数据结构·c++·算法·哈希算法·散列表