思路 :用当前值除以3 获得一个值 a , b = parseInt(a) c = Math.pow(3,b);
用c 除以 要判断的数,如果能除尽, 则是, 如果除不尽, 则不是。
/** * @param {number} n * @return {boolean} */ var isPowerOfThree = function(n) { if(n <= 0){ return false; } if(n == 1){ return true; } var index = Math.log(n)/Math.log(3); var curr = parseInt(index); var next = Math.ceil(index); if(n % 3 == 0){ var temp = Math.pow(3,next) / n; if(parseInt(temp) == temp){ return true; } } return false; };
李晓东 现任职于北京行云智网络科技有限公司,Node.js工程师