LeetCode 1979. 找出数组的最大公约数
生活随笔
收集整理的这篇文章主要介绍了
LeetCode 1979. 找出数组的最大公约数
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
文章目录
- 1. 题目
- 2. 解题
1. 题目
给你一个整数数组 nums ,返回数组中最大数和最小数的 最大公约数 。
两个数的 最大公约数 是能够被两个数整除的最大正整数。
示例 1: 输入:nums = [2,5,6,9,10] 输出:2 解释: nums 中最小的数是 2 nums 中最大的数是 10 2 和 10 的最大公约数是 2示例 2: 输入:nums = [7,5,6,8,3] 输出:1 解释: nums 中最小的数是 3 nums 中最大的数是 8 3 和 8 的最大公约数是 1示例 3: 输入:nums = [3,3] 输出:3 解释: nums 中最小的数是 3 nums 中最大的数是 3 3 和 3 的最大公约数是 3提示: 2 <= nums.length <= 1000 1 <= nums[i] <= 1000来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/find-greatest-common-divisor-of-array
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
class Solution:def findGCD(self, nums: List[int]) -> int:nums.sort()return math.gcd(nums[0], nums[-1])36 ms 15.1 MB Python3
class Solution { public:int findGCD(vector<int>& nums) {sort(nums.begin(), nums.end());return __gcd(nums[0], nums.back());} };4 ms 12.1 MB C++
class Solution { // 自己实现gcd public:int findGCD(vector<int>& nums) {sort(nums.begin(), nums.end());return mygcd(nums[0], nums.back());}int mygcd(int x, int y){int r;while(y){r = x%y;x = y;y = r;}return x;} };我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
总结
以上是生活随笔为你收集整理的LeetCode 1979. 找出数组的最大公约数的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 天池 在线编程 圣杯咒语
- 下一篇: LeetCode 6039. K 次增加