Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 프로그래밍첫걸음시작하기
- react
- 바이트디그리
- next.js 빌드 오류
- PYTHON
- 프로그래머스
- K디지털크레딧
- 스파르타코딩클럽 후기
- 스파르타코딩클럽
- ionic
- 프로그래밍기초
- ionic-react
- ionic react
- 부트캠프
- React Native
- spartacodingclub
- 항해99
- javascript
- 내일배움카드
- typescript
- mongodb
- 알고리즘
- styled-components
- 패스트캠퍼스
- HTML
- styled components
- react-native
- CSS
- Algorithm
- Firebase
Archives
- Today
- Total
bravo my life!
[항해99][알고리즘] [JavaScript] 정수 제곱근 판별 본문
728x90
문제 설명
임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.
n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.
제한 사항
- n은 1이상, 50000000000000 이하인 양의 정수입니다.
입출력 예
n | return |
121 | 144 |
3 | -1 |
입출력 예 설명
입출력 예#1
121은 양의 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합니다.
입출력 예#2
3은 양의 정수의 제곱이 아니므로, -1을 리턴합니다.
solution.js
function solution(n) {
var answer = 0;
if (Number.isInteger(Math.sqrt(n)) === true) {
//조건문을 만들어 준다. Number함수와 isInteger메소드, Math.sqrt메소드로
//매개변수 n의 값을 true인지 확인한다.
answer = Math.pow((Math.sqrt(n) + 1), 2)
//true일 경우, Math.pow와 Math.sqrt메소드를 사용해 매개변수 n의 루트값에서 +1을 한 후,
//다시 제곱을 하여 변수 answer에 저장한다.
} else {
answer = -1
//아닐경우 -1을 변수 answer에 저장한다.
}
return answer;
}
'Algorithm' 카테고리의 다른 글
[항해99][알고리즘] [JavaScript] x만큼 간격이 있는 n개의 숫자 (0) | 2022.03.16 |
---|---|
[항해99][알고리즘] [JavaScript] 행렬의 덧셈 (0) | 2022.03.16 |
[항해99][알고리즘] [JavaScript] 이상한 문자 만들기 (0) | 2022.03.15 |
[항해99][알고리즘] [JavaScript] 문자열 다루기 기본 (0) | 2022.03.14 |
[항해99][알고리즘] [JavaScript] 2016년 (0) | 2022.03.14 |