https://school.programmers.co.kr/learn/courses/30/lessons/181923
https://school.programmers.co.kr/learn/courses/30/lessons/181921
범위에 배열을 초기화 할 때 만들어주고 ,
정규표현식을 이용해 0, 5문자가 있는 경우만 추출한다.
function solution(l, r) {
const result = Array.from({length: r - l + 1}, (_, i)=> i + l).filter(n=>!/[^05]/.test(n));
return result.length ? result : [-1];
}
// /[^05]/ 0,5이외에 다른문자열이 있는지 확인 true가 나오면 다른문자열 있는것
https://school.programmers.co.kr/learn/courses/30/lessons/181920
https://school.programmers.co.kr/learn/courses/30/lessons/181919
나의 풀이
조건에 맞을때 까지 while문으로 반복을 해줬다.
function solution(n) {
var answer = [];
answer.push(n)
while(n !== 1) {
if(n % 2 === 0) {
n = parseInt(n / 2)
} else {
n = 3 * n + 1
}
answer.push(n)
}
return answer;
}
재귀함수를 사용한 풀이
function solution(n, arr = []) {
arr.push(n);
if (n == 1) return arr;
if (n % 2 === 0) return solution(parseInt(n / 2), arr);
return solution(3 * n + 1, arr)
}
https://school.programmers.co.kr/learn/courses/30/lessons/181918
'DAILY' 카테고리의 다른 글
5월 15일 알고리즘 연습문제 (0) | 2023.05.15 |
---|---|
5월 14일 알고리즘 연습 (0) | 2023.05.14 |
5월 5일 알고리즘 연습문제 (0) | 2023.05.06 |
5월 4일 알고리즘 연습문제 (0) | 2023.05.05 |
등비수열, 등차수열 알고리즘 (0) | 2023.02.03 |