Given two positive integers a
and b
, return the number of common factors of a
and b
.
An integer x
is a
common factor of a
and b
if x
divides both a
and b
.
Input: a = 12, b = 6 Output: 4 Explanation: The common factors of 12 and 6 are 1, 2, 3, 6.
Input: a = 25, b = 30 Output: 2 Explanation: The common factors of 25 and 30 are 1, 5.
1 <= a, b <= 1000
impl Solution {
pub fn common_factors(a: i32, b: i32) -> i32 {
(1..=a.min(b)).filter(|x| a % x == 0 && b % x == 0).count() as i32
}
}