정수 n이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ n ≤ 100
문제분석:
매개변수로들어온 n보다 작은숫자들을 담은 배열중 홀수만을 담은 배열을 return해야한다.
문제 풀이 순서.
1.n보다 작은 숫자들을 배열에 저장 해야 한다.
let fullnum = [];
let cnt = 1;
while(cnt <= n){
fullnum.push(cnt);
cnt += 1;
}
2. n보다작은 숫자들을 저장한 배열은 다음과같은값을 가지게된다.
ex) solution(10) -> fullnum[1,2,3,4,5,6,7,8,9,10]
3.이제 n이하의 숫자들을 저장한 배열에서 홀수만 남게 걸러 내야 한다.
기존의 fullnum 배열에서 숫자를 직접 삭제하는방법도있지만 나는 그냥 또 다른 홀수만담는배열 holarr 배열을 만들어서 그곳에 따로 n이하의 홀수 숫자들만 담아두었다.
let cnt2 = 0;
//2. n이하의 숫자들을 모두저장한 배열에있는 숫자중 홀수만을 걸러낼것이다.
while(cnt2 < fullnum.length){
if(fullnum[cnt2] % 2 == 1) {
holarr.push(fullnum[cnt2]);
}
cnt2 += 1;
}
다른사람의 풀이
function solution(n) {
var answer = [];
for (let i = 1; i<=n; i+=2) answer.push(i)
return answer;
}
반복문에서 직접 1부터 n까지의 숫자들을 반복하면서 i가 2씩 늘어남에 따라 1,3,5 홀수 만을 담는 배열을 만들어 냈다.
'자바스크립트 코딩테스트 정리' 카테고리의 다른 글
프로그래머스 코딩테스트입문 LEVEL0 외계행성의 나이 (0) | 2023.08.07 |
---|---|
연습문제 콜라문제 (0) | 2023.07.20 |
프로그래머스 코딩테스트 입문 level0 최빈값 구하기 (0) | 2023.07.12 |
프로그래머스 js level 0 중앙값 구하기 - 메소드 사용하지않은버전 (0) | 2023.07.10 |
코딩테스트의 중점 (0) | 2023.07.10 |