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?
一刷
题解:居然不懂power的意思。意思是,n是不是3的某次方。
3^20 > Integer.MAX_VALUE, 3^19<Integer.MAX_VALUE
如果(3^19)%n == 0, 表示n的因子中只有3
class Solution {
public boolean isPowerOfThree(int n) {
return (n>0 && 1162261467%n == 0);
}
}
网友评论