LeetCode·每日一题·2427. 公因子的数目·模拟

作者:小迅
链接:https://leetcode.cn/problems/number-of-common-factors/solutions/2210193/mo-ni-zhu-shi-chao-ji-xiang-xi-by-xun-ge-ngvd/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

题目

LeetCode·每日一题·2427. 公因子的数目·模拟_第1张图片

 

思路

题意 -> 给定两个正整数 a 和 b ,返回 a 和 b 的 公 因子的数目。

公因子:如果 x 可以同时整除 a 和 b ,则认为 x 是 a 和 b 的一个 公因子 。

那么任意一个公因子肯定满足不大于a和b,那么可以取a和b中的最大值为右边界,取1位左边界,对所有的元素进行枚举,如果当前元素能被a和b整除的话,公因子+1,其中使用除法不是不能直接判断是否能整除的,需要使用取余,取余为 0 则是能被整除。

代码注释超级详细

代码


int commonFactors(int a, int b){
    int max = a > b ? a : b;//取最大值
    int count = 0;
    for (int i = 1; i <= max; ++i) {//枚举每一个元素
        if (a % i == 0 && b % i == 0) {//公因子+1
            ++count;
        }
    }
    return count;
}

作者:小迅
链接:https://leetcode.cn/problems/number-of-common-factors/solutions/2210193/mo-ni-zhu-shi-chao-ji-xiang-xi-by-xun-ge-ngvd/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(LeetCode刷题笔记,leetcode,算法,职场和发展)