본문 바로가기
JavaScript/메소드

[javascript] 거듭제곱 확인하기

by Angry Stock 2023. 7. 12.
반응형
1. 비트 AND 연산자 사용
function solution1(n) {
  return (n & (n - 1)) === 0;
}

const n = [8, 16, 27, 32, 81];

for (let i = 0; i < n.length; i++) {
  console.log('solution1', solution1(n[i]));
}
결과

2. log 사용
function solution2(n) {
  const answer = Math.log2(n);
  return Number.isInteger(answer);
}

function solution3(n) {
  const answer = Math.log10(n) / Math.log10(3);
  return Number.isInteger(answer);
}

const n = [8, 16, 27, 32, 81];

for (let i = 0; i < n.length; i++) {
  console.log('solution2', solution2(n[i]));
  console.log('solution3', solution3(n[i]));
}
결과

반응형

댓글