728x90
반응형
정수 제곱근 판별
설명
임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지
판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고,
n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.
제한 사항
n은 1이상, 50000000000000 이하인 양의 정수입니다.
입출력 예
n | return |
---|---|
121 | 144 |
3 | -1 |
정답 풀이
function solution(n) {
let num = Math.sqrt(n);
return n%num == 0 ? (num+1) * (num +1) : -1
}
해설
Math.sqrt는 제곱근을 판별해 주는 메소드로 사용하여 매개변수 n의
제곱근을 판별해줍니다. num에 제곱근을 저장하고 삼항연산자를 사용하여
제곱근인 수로 매개변수 n을 나눴을때 나머지가 0이면 제곱근 수에
+1을하여 제곱하는 공식을 만들어서 적용하였습니다. 그게 아니라면 -1을
반환시켰습니다.
반응형
'프로그래머스' 카테고리의 다른 글
[programmers]부족한 금액 계산하기 (1) | 2022.11.29 |
---|---|
[programmers]약수의 개수와 덧셈 (2) | 2022.11.22 |
[programmers]x만큼 간격이 있는 n개의 숫자 (1) | 2022.11.21 |
[programmers] 가운데 글자 가져오기 (2) | 2022.11.18 |
[programmers]제일 작은 수 제거하기 (1) | 2022.11.17 |