문제설명:
배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요.
function solution(arr) {
let result = [];
for(let i = 0; i < arr.length; i++) {
if(arr[i] !== arr[i - 1]) {
result.push(arr[i]);
}
}
return result;
}
문제풀이
연속적으로 나타나는 숫자를 하나만 남기고 제거한뒤 남은 수를 담을 result를 빈배열 형태로 선언해주고 반복문을 통해 arr의 모든 요소에 접근하여 arr의 i가 arr의 i의 직전요소인 i - 1의 요소와 같은지 비교하여 같지 않으면 result에 arr의 i를 추가해준 뒤 반복문이 모든 요소를 다 확인한 뒤에는 result를 리턴해준다.