题目描述(来源于LeetCode)

给你两个正整数 a 和 b ,返回 a 和 b 的  因子的数目。
如果 x 可以同时整除 a 和 b ,则认为 x 是 a 和 b 的一个 公因子 。

代码实现

1
2
3
4
5
6
7
8
9
class Solution:
def commonFactors(self, a: int, b: int) -> int:
x=min(a,b)
i=1
count =0
for i in range(1,x+1):
if a%i==0 and b%i==0:
count +=1
return count

复杂度分析

  • 时间复杂度:O(d)O(d) ,d为a、b最小值
  • 空间复杂度:O(1)O(1) - 只用了常数级别的额外空间