326. Power of Three
QuestionEditorial Solution
Total Accepted: 38283 Total Submissions: 104551 Difficulty: Easy
Given an integer, write a function to determine if it is a power of three.
Follow up:
Could you do it without using any loop / recursion?
Credits:
Special thanks to @dietpepsi for adding this problem and creating all test cases.
Subscribe to see which companies asked this question
一、题目描述
输入int数值,输出是否为3的幂。
二、JavaCode
public class Solution {
public boolean isPowerOfThree(int n) {
//不用递归或循环
// 1162261467 is 3^19, 3^20 is bigger than int
//return ( n>0 && 1162261467%n==0);
if(n <= 0)
return false;
while(n > 1)
{
if(n % 3 == 0)
{
n = n / 3;
}
else
{
return false;
}
}
return true;
}
}