[TIL] 241123 (프로그래머스 배열 만들기 3)

·2024년 11월 23일

TIL

목록 보기
228/268
post-thumbnail

오늘 한 일

  • 알고리즘 코드카타
    • 배열 만들기 3

알고리즘 코드카타

배열 만들기 3

문제

정수 배열 arr와 2개의 구간이 담긴 배열 intervals가 주어집니다.

intervals는 항상 [[a1, b1], [a2, b2]]의 꼴로 주어지며 각 구간은 닫힌 구간입니다. 닫힌 구간은 양 끝값과 그 사이의 값을 모두 포함하는 구간을 의미합니다.

이때 배열 arr의 첫 번째 구간에 해당하는 배열과 두 번째 구간에 해당하는 배열을 앞뒤로 붙여 새로운 배열을 만들어 return 하는 solution 함수를 완성해 주세요.

풀이

function solution(arr, intervals) {
  return [
    ...arr.slice(intervals[0][0], intervals[0][1] + 1),
    ...arr.slice(intervals[1][0], intervals[1][1] + 1),
  ];
}

arr을 slice한 두 배열을 새로운 배열에 넣어 간단하게 풀이했다.

다른 사람의 풀이

function solution(arr, intervals) {
    const [[a,b],[c,d]] = intervals;

    return [...arr.slice(a, b+1), ...arr.slice(c, d+1)];
}

풀이 방식은 같지만 좀 더 간결하게 보이는 풀이.

profile
웹 프론트엔드 개발자

0개의 댓글