본문 바로가기
Algorithm

[JavaScript] 프로그래머스 - 정수 제곱근 판별

by 랩린안 2022. 9. 20.
/* 

문제 : n이 어떤 양의 정수 x의 제곱이면 x+1의 제곱, 아니면 -1을 리턴하라

자료 : 
정수 n (양의 정수 x의 제곱)

조건 : 제곱이 아니면 -1 반환

계획 : 
제곱근을 구해주는 Math.sqrt(number); 로 제곱근을 구해줌
Math.sqrt(144) = 12;
제곱근이 정수인지 판별함
정수면 x+1 의 제곱 아니면 -1 리턴


*/

const solution = (n) => {
  const num = Math.sqrt(n);

  if (num % 1 === 0) return (num + 1) * (num + 1);

  return -1;
};
제곱근을 구해주는 Math.sqrt(number)
정수인지 판별 n % 1 === 0
const solution = (n) => {
  const num = Math.sqrt(n);

  if (num % 1 === 0) return (num + 1) * (num + 1);

  return Number.isInteger(num) ? Math.pow(num + 1, 2) : -1;
};

다른 사람의 풀이

정수인지 판별을 isInteger(num) 으로 하고

제곱을

Math.pow(num + 1, 2) 로 하는 방법도 있는 걸 알았다.