-
[JavaScript] 빈 배열에 추가, 삭제하기
문제아무 원소도 들어있지 않은 빈 배열 X가 있다. 길이가 같은 정수 배열 arr과 boolean 배열 flag가 매개변수로 주어진다. flag를 차례대로 순회하며 flag[i]가 true라면 X의 뒤에 arr[i]를 arr[i] * 2번 추가한다. flag[i]가 false라면 X에서 마지막 arr[i] 개의 원소를 제거한 X를 반환하는 함수를 작성해라. 예시arrflagresult[3, 2, 4, 1, 3][true, false, true, false, false][3, 3, 3, 3, 4, 4, 4, 4] 나의 풀이function solution(arr, flag) { const X = []; // flag 값을 순회하며 반복 flag.map((v, i) => { if( v ) ..
🧬알고리즘/Programmers
2024. 6. 15.
-
[JavaScript] 배열의 원소만큼 추가하기
문제아무 원소도 들어있지 않은 빈 배열 X가 있다. 양의 정수 배열 arr가 매개변수로 주어질 때, arr의 앞에서 부터 순서대로 원소를 보면서 원소가 a라면 X의 맨 뒤에 a번 만큼 추가하는 일을 반복한 뒤의 X 배열을 반환하는 함수를 작성해라. 예시arrX[5, 1, 4][5, 5, 5, 5, 5, 1, 4, 4, 4, 4] 나의 풀이function solution(arr) { const X = []; arr.map((v) => { // arr 원소의 value 만큼 X 배열에 push for( let i = 0; i 다른 풀이function solution(arr) { return arr.reduce((a, c) => a.concat(Array(c).fill(c)), []..
🧬알고리즘/Programmers
2024. 6. 14.
-
[JavaScript] 간단한 식 계산하기
문제문자열 binomial이 매개변수로 주어진다. binomial은 "a op b" 형태의 이항식이고 a와 b는 음이 아닌 정수, op는 '+', '-', '*' 중 하나이다. 주어진 식을 계산한 정수를 반환하는 함수를 작성해라. 예시binomialresult"43 + 12"55 나의 풀이const solution = (b) => eval(`${b.split(" ")[0]} ${b.split(" ")[1]} ${b.split(" ")[2]}`); 다른 풀이const ops = { '+': (a, b) => a + b, '-': (a, b) => a - b, '*': (a, b) => a * b,};function solution(binomial) { const [a, op, b] = bino..
🧬알고리즘/Programmers
2024. 6. 13.