求解最大公约数(两种)

简介: 求解最大公约数(两种)

题目

输入两个整数 a 和 b,请你编写一个函数,int gcd(int a, int b), 计算并输出 a 和 b 的最大公约数。


输入格式

共一行,包含两个整数 a 和 b。


输出格式

共一行,包含一个整数,表示 a 和 b 的最大公约数。


数据范围

1≤a,b≤1000


输入样例:

12 16


输出样例:

4


解析

解法1:递归

思路



代码

#include <iostream>usingnamespacestd;
intgcd(inta, intb){
if(a%b==0) returnb;
elsegcd(b,a%b);  
}
intmain(){
inta,b;
cin>>a>>b;
cout<<gcd(a,b);
return0;
}



解法2:

1、暴力从1开始除以,能整除以即得到最大公因数

#include <iostream>usingnamespacestd;
intgcd(inta, intb){
intc=min(a,b);
intd;
for(inti=1;i<=c;i++){
if(a%i==0&&b%i==0){
d=i;  
        }
    }
returnd;
}
intmain(){
inta,b;
cin>>a>>b;
cout<<gcd(a,b);
return0;
}



2、从两者最小值开始除以,能整除即得到最大公因数

#include <iostream>usingnamespacestd;
intgcd(inta, intb){
intc=min(a,b);
intd;
for(inti=c;i>=0;i--){
if(a%i==0&&b%i==0){
d=i;  
break;
        }
    }
returnd;
}
intmain(){
inta,b;
cin>>a>>b;
cout<<gcd(a,b);
return0;
}




❤️❤️❤️忙碌的敲代码也不要忘了浪漫鸭!


目录
相关文章
|
SQL 机器学习/深度学习 数据采集
Apache Doris Broker数据导入使用示例及介绍
Broker load 是一个异步的导入方式,支持的数据源取决于 Broker 进程支持的数据源。用户需要通过 MySQL 协议 创建 Broker load 导入,并通过查看导入命令检查导入结果。
2045 0
Apache Doris Broker数据导入使用示例及介绍
|
数据可视化 关系型数据库 MySQL
Apache Superset 1.2.0教程 (三)—— 图表功能详解
通过之前章节的学习,我们已经成功地安装了superset,并且连接mysql数据库,可视化了王者英雄的数据。使用的是最简单Table类型的图表,但是superset还支持非常多的图表类型。 本文我们将对各种图表类型进行逐一的演示,文章较长。
1379 0
Apache Superset 1.2.0教程 (三)—— 图表功能详解
|
Linux 开发工具 C语言
mac/linux中vim永久显示行号、开启语法高亮
步骤1:   cp /usr/share/vim/vimrc ~/.vimrc   先复制一份vim配置模板到个人目录下   注:redhat 改成 cp /etc/vimrc ~/.vimrc 步骤2:   vi ~/.vimrc   进入insert模式,在最后加二行   syntax on   set nu! 保存收工。
2064 0
|
存储 NoSQL Cloud Native
阿里云:加大NoSQL数据库软硬件一体化技术自研
8月25日,在天池平台与阿里云数据库事业部联合主办的阿里云NoSQL数据库峰会上,阿里云公布NoSQL数据库自研2.0计划,进一步加大软硬件一体化技术体系的自研力度,通过聚焦软硬协同、多模融合、云原生三大方向,提升云原生内存数据库Tair、云原生多模数据库Lindorm等NoSQL数据库产品核心竞争力。
1073 0
阿里云:加大NoSQL数据库软硬件一体化技术自研
|
存储 NoSQL Java
【Docker】笔记小结
【Docker】笔记小结
1172 0
【Docker】笔记小结
|
XML 传感器 算法
URDF机器人建模
ROS学习不必须非要机器人硬件平台,需要了解如何创建机器人的模型 如何使用ROS中的URDF工具创建机器人的模型
URDF机器人建模
|
Dubbo NoSQL Java
从单机定时到多层分发
在工作中基本上都会使用定时任务,常用的有 Spring 定时框架、Quartz、elastic-job、xxl-job 等。这里说不上框架的好坏,只有适合自己的才是最好的,本文仅从个人角度上谈一谈对定时任务的看法。
653 0
|
安全 搜索推荐 API
阿里YunOS:做移动互联网的赋能者
10月14日2015杭州·云栖大会开幕,小小的云栖小镇竟然吸引了超过2万名开发者前往。在第二天的YunOS分论坛上,阿里YunOS一口气发布了三大重量级产品和服务:最新版操作系统YunOS航海版light、能够安装到可穿戴设备的操作系统YunOS for Wear 、面向开发者和合作伙伴的YunOS开放平台。
784 0
阿里YunOS:做移动互联网的赋能者
|
Web App开发 编解码 缓存
基于视频流传输 — 在线教育白板技术
在线教育不同于线下教育, 内容需要经过电子白板展现给用户,如何做出优秀的在线教育白板成为研究的重点。本文来自学而思网校客户端架构负责人赵文杰在 LiveVideoStackCon 2018 大会上的分享,并由 LiveVideoStack 整理而成。
基于视频流传输 — 在线教育白板技术
|
存储 人工智能 监控
什么是数据中心?
什么是数据中心?