-
[JavaScript] 같은 숫자는 싫어
문제각 원소가 0부터 9까지로 이루어진 배열 arr가 매개변수로 주어진다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 한다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 한다. 예시arranswer[1, 1, 3, 3, 0, 1, 1][1, 3, 0, 1][4, 4, 4, 3, 3][4, 3] 풀이const solution = (arr) => arr.filter((v, i) => v !== arr[i+1]); 풀이 방법현재 인덱스의 value와 다음 인덱스의 value가 같지 않을 때만 값을 넣어주면 된다고 생각했다. 그래서 filter() 함수를 사용하고 같지 않을 때만 넣어주면 순서대로 넣어줄 거라고 생각헀다. [1, 1,..
🧬알고리즘/Programmers
2024. 8. 13.
-
[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.