Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자바스크립트코딩테스트
- 제로베이스
- JS
- stack문제
- 알고리즘문제풀이
- Baekjoon
- 타입스크립트
- 리액트
- next13
- leetcode문제풀이
- 자바스크립트
- leetcode
- 자바스크립트 문제풀이
- 자바스크립트 알고리즘 문제
- react
- 프로그래머스
- 자바스크립트 알고리즘
- JavaScript
- lodash
- Next.js13
- HTML
- 리액트쿼리
- til
- 자바스크립트 문제 풀이
- 프론트엔드
- CSS
- 자바스크립트 문제
- Next
- NPM
- 자바스크립트 연결리스트
Archives
- Today
- Total
코드노트
코딩테스트 연습 - 같은숫자는 싫어 본문
더보기
문제 설명
배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면,
- arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다.
- arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다.
배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요.
프로그래머스 코딩테스트 연습을 1일 1개 이상 해보려고한다..!
레벨 1부터 해봐야지..
처음 보고 for 문이나 filter로 해야겠다라는 생각은 했지만 for문으로 풀고나니 다른사람들의 풀이를 보니 filter한줄로 해결했다..
역시 더 생각해야해..
나의답
let arr = [1, 1, 3, 3, 0, 1, 1];
function solution(arr) {
var answer = [];
for (let i = 0; i < arr.length; i++) {
if (arr[i] !== arr[i + 1]) {
answer.push(arr[i]);
}
}
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
return answer;
}
console.log(solution(arr));
다른풀이
function solution(arr)
{
return arr.filter((val, index) => val != arr[index+1]);
}
'Code note > 자바스크립트 알고리즘 문제풀이' 카테고리의 다른 글
프로그래머스 완주하지 못한 선수 풀이 정리 (0) | 2022.08.31 |
---|---|
코딩테스트 연습 - 올바른 괄호 (0) | 2022.08.30 |
자바스크립트 달팽이 배열 문제 풀이 (0) | 2022.08.26 |
자바스크립트 배열 문제 풀이 - 숫자 빈도수 구하기 (0) | 2022.08.24 |
자바스크립트 배열 문제 풀이 - 높이 맞추기 / 배열 평균에 맞추기 (0) | 2022.08.23 |