1952. Three Divisors

Given an integer n, return true if n has exactly three positive divisors. Otherwise, return false.

An integer m is a divisor of n if there exists an integer k such that n = k * m.

 

Example 1:

Input: n = 2
Output: false
Explantion: 2 has only two divisors: 1 and 2.

Example 2:

Input: n = 4
Output: true
Explantion: 4 has three divisors: 1, 2, and 4.

 

Constraints:

  • 1 <= n <= 104

1952. Three Divisors
struct Solution;

impl Solution {
    fn is_three(n: i32) -> bool {
        let mut count = 2;
        for i in 2..n {
            if n % i == 0 {
                count += 1;
            }
        }
        count == 3
    }
}

#[test]
fn test() {
    let n = 2;
    let res = false;
    assert_eq!(Solution::is_three(n), res);
    let n = 4;
    let res = true;
    assert_eq!(Solution::is_three(n), res);
}