三除数

小超芳 / 2023-05-17 / 原文

给你一个整数 n 。如果 n 恰好有三个正除数 ,返回 true ;否则,返回 false 。

如果存在整数 k ,满足 n = k * m ,那么整数 m 就是 n 的一个 除数 。

示例 1:

输入:n = 2
输出:false
解释:2 只有两个除数:1 和 2 。
示例 2:

输入:n = 4
输出:true
解释:4 有三个除数:1、2 和 4 。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/three-divisors
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

class Solution {
    public boolean isThree(int n) {
        boolean flag = false;
        int count = 0;
        //找到除了1和本身之外的数
        for(int i = 2;i< n;i++){
            if(n%i==0)count++;
            //如果多的除数,那么就不是三除数
            if(count>1)return flag;
        }
        return count==1;
    }
}