OCAC暑期比赛第一场 K题 最大公约数 题解

Posted ocac

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OCAC暑期比赛第一场 K题 最大公约数 题解相关的知识,希望对你有一定的参考价值。

最大公约数
【题目描述】
给你两个int范围内的正整数,求它们的最大公约数。
【输入格式】
输入的一行包含两个正整数 a 和 b (1<=a,b<=2^31),以空格分隔。
【输出格式】
输出 a 和 b 的最大公约数。
【样例输入】
6 8
【样例输出】
2
【题目分析】
gcd模板题。我们可以用 STL 提供的 __gcd 函数直接进行运算,也可以自己模拟 gcd 函数来写。
自己模拟实现的代码:

#include <bits/stdc++.h>
using namespace std;

int gcd(int a, int b) 
    if (b == 0) return a;
    return gcd(b, a%b);


int a, b;

int main() 
    cin >> a >> b;
    cout << gcd(a, b) << endl;
    return 0;

 使用 STL 提供的 __gcd 函数实现的代码:

#include <bits/stdc++.h>
using namespace std;

int a, b;

int main() 
    cin >> a >> b;
    cout << __gcd(a, b) << endl;
    return 0;

 

以上是关于OCAC暑期比赛第一场 K题 最大公约数 题解的主要内容,如果未能解决你的问题,请参考以下文章

OCAC暑期比赛第一场 G题 男孩或者女孩 题解

OCAC暑期比赛第一场 E题 有用的数学 题解

OCAC暑期比赛第一场 D题 足球比赛中的危险状态 题解

OCAC暑期比赛第一场 L题 判断素数 题解

OCAC暑期比赛第一场 F题 字符串加密 题解

OCAC暑期比赛第一场 B题 字符串任务 题解