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 |
Tags
- .env
- 커밋 한번에
- dotenv
- reacts3
- 제일 작은 수 제거하기
- next #middleware
- 코딩테스트
- elasticIP
- MySQL
- prettier
- AWS
- react
- max_allowed_packet
- s3확장자
- 코드정렬
- 리액트코드정렬
- EC2
- 부족한 금액 계산하기
- 프로그래머스
- vscode
- utf8mb4
- 자동완성방지
- 리액트
- 자연수 뒤집어 배열로 만들기
- Node
- express
- 프리티어
- axios
- useReducer
- interactive_timeout
Archives
- Today
- Total
Sungtt
Lev.1 프로그래머스 나누어 떨어지는 숫자 배열 본문
프로그래머스 [나누어 떨어지는 숫자 배열]
문제 설명
array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.
divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.
제한사항
arr은 자연수를 담은 배열입니다.
정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.
divisor는 자연수입니다.
array는 길이 1 이상인 배열입니다.
직접 풀이 결과
function solution(arr, divisor) {
var answer = [];
arr.forEach((i,index) => {
if(i % divisor === 0){
answer.push(i)
}else{
return
}
})
return answer.length === 0 ? [-1] : answer.sort((a,b) => a - b);
}
arr 순회하며 i % divisor가 0 일 경우에만 answer 배열에 push 해준다.
이때 아래 else문은 사실 필요없다.
그리고 삼항조건자를 통해 answer의 길이가 0이면 -1 배열을 리턴,
아닐 경우 answer를 정렬하여 리턴
참고 풀이 결과 - 1
function solution(arr, divisor) {
var answer = arr.filter(v => v%divisor == 0);
return answer.length == 0 ? [-1] : answer.sort((a,b) => a-b);
}
filter를 이용하여 코드가 더욱 간결해졌다.
filter는 배열을 순회하며 정해놓은 조건이 true인 요소들을 반환해주는 기능이다.
그 후 리턴은 같은 방식.
'코테' 카테고리의 다른 글
Lev.2 프로그래머스 이진 변환 반복하기 (0) | 2023.03.21 |
---|---|
Lev.1 프로그래머스 약수의 개수와 덧셈 (0) | 2023.03.20 |
Lev.1 프로그래머스 정수 제곱근 판별 (0) | 2023.03.19 |
Lev.1 프로그래머스 푸드파이트 대회 (0) | 2023.03.10 |
Lev.2 프로그래머스 가장 큰 수 JavaScript, 정렬 (0) | 2023.01.23 |
Comments