🫠 Programmers (level 1) 👉🏻 문제 7번 (정수 제곱근 판별)
✏️ 문제 설명
임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.
n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.
✏️ 제한 사항
n은 1 이상, 50000000000000 이하인 양의 정수입니다.
✏️ 입출력 예
n return
121 144
3 -1
function solution(n) {
return Math.sqrt(n) % 1 === 0 ? Math.pow((Math.sqrt(n) + 1),2) : -1
}
✅ Math.sqrt(n) 👉🏻 n의 제곱근이 있는지 계산
✅ Math.pow(n, 2) 👉🏻 n을 2번 제곱
💡Math.sqrt(n)이 소수로 나올 경우, % 1을 하면 나머지가 0이 나오지 않는다. 따라서 제곱근이 있는지 확인할 수 있다.
'프로그래머스 풀이 > level1' 카테고리의 다른 글
[Programmers] level 1) 문제 '자연수 뒤집어 배열로 만들기' 풀이 (0) | 2023.05.09 |
---|---|
[Programmers] level 1) 문제 '문자열 내 p와 y의 개수' 풀이 (0) | 2023.05.08 |
[Programmers] level 1) 문제 'x만큼 간격이 있는 n개의 숫자' 풀이 (0) | 2023.05.06 |
[Programmers] level 1) 문제 '나머지가 1이 되는 수 찾기' 풀이 (0) | 2023.05.05 |
[Programmers] level 1) 문제 '자릿수 더하기' 풀이 (1) | 2023.05.04 |