Java教程

2021.09.30 - 102.3的幂

本文主要是介绍2021.09.30 - 102.3的幂,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文章目录

  • 1. 题目
  • 2. 思路
    • (1) 循环
    • (2) 数学法
  • 3. 代码

1. 题目

在这里插入图片描述

2. 思路

(1) 循环

  • 非3的幂次方必然不能被3不断整除,直到1为止。

(2) 数学法

  • int取值范围内3的幂次方必然能被int取值范围内3的最大幂次方,即3的19次方整除,非3的幂次方则不行。

3. 代码

public class Test {
    public static void main(String[] args) {
    }
}

class Solution {
    public boolean isPowerOfThree(int n) {
        if (n <= 0) {
            return false;
        }
        while (n > 1) {
            if (n % 3 != 0) {
                return false;
            }
            n /= 3;
        }
        return true;
    }
}

class Solution1 {
    public boolean isPowerOfThree(int n) {
        return n > 0 && 1162261467 % n == 0;
    }
}
这篇关于2021.09.30 - 102.3的幂的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!