프로그래머스 - 제곱수 판별하기.

이한결·2022년 12월 8일
0

프로그래머스

목록 보기
35/107
post-thumbnail

문제 설명

어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.

제한사항

● 1 ≤ n ≤ 1,000,000

입출력 예

입출력 예 설명

입출력 예 #1

144는 12의 제곱이므로 제곱수입니다. 따라서 1을 return합니다.

입출력 예 #2

976은 제곱수가 아닙니다. 따라서 2를 return합니다.

나의 코드

function solution(n) {
        if (Number.isInteger(Math.sqrt(n))) {
          return 1;
        } else {
          return 2;
        }
}

이 문제 역시 '제곱수'라는 것에 막혀서 오랜 시간 삽질을 하였다.
오랜 시간 삽질 끝에 자바스크립트에 sqrt()라는 제곱수를 판별할 수 있는 것이 있었다. 사실 정확히는 제곱근을 판별하기 위해 있는 것이다. sqrt를 통해 결과 값이 정수로 나오면 1을 반환하고, 정수가 아닌 소수점이 포함되어 나올경우, 2를 반환하게 하였다.

끝!

profile
평범한 삶을 위하여

0개의 댓글