Given an integer n, return true if it is a power of four. Otherwise, return false.
An integer n is a power of four, if there exists an integer x such that n == 4x.
題目:判斷給定數字是不是四的平方
思路:
可以用遞歸,反覆 / 4
var isPowerOfFour = function(n) {
// ex 3 / 4 = 0
if (n === 0) {
return false;
} else if (n === 1) {
return true;
}
// ex 5 / 4 = 1.25
if (!Number.isInteger(n / 4)) {
return false;
}
return isPowerOfFour(n / 4);
};
或是從1開始,*4,直到比n大為止,判斷能不能得到目標值
var isPowerOfFour = function(n) {
let target = 1;
while (target <= n) {
if (target === n) {
return true;
} else {
target *= 4;
}
}
return false;
};
使用平方運算符
var isPowerOfFour = function(n) {
for (let i = 0; 4 ** i <= n; i++) {
if (4 ** i == n) {
return true;
}
}
return false;
};