Header Banner
GG Logo

Future Engineering

기술의 최전선을 기록합니다.

기술 자료/Algorithm/[JavaScript] 프로그래머스 문제: 2의 영역 찾기 (0단계)

[JavaScript] 프로그래머스 문제: 2의 영역 찾기 (0단계)

Algorithm약 1년 전

문제 설명

정수 배열 arr가 주어집니다. 이 배열에서 숫자 2가 포함된 가장 작은 연속된 부분 배열을 반환하는 solution 함수를 완성하세요.

만약 배열에 숫자 2가 하나도 없다면, [-1]을 반환해야 합니다.

 

이미지

 

function solution(arr) {
    const firstTwo = arr.indexOf(2);  // 배열에서 첫 번째로 등장하는 숫자 2의 인덱스 찾기
    if (firstTwo === -1) {
        return [-1];  // 배열에 숫자 2가 없을 경우 [-1] 반환
    }
    const lastTwo = arr.lastIndexOf(2);  // 배열에서 마지막으로 등장하는 숫자 2의 인덱스 찾기
    return arr.slice(firstTwo, lastTwo + 1);  // 첫 번째 2부터 마지막 2까지의 부분 배열 반환
}

 

  1. indexOf를 사용하여 배열에서 첫 번째로 등장하는 숫자 2의 인덱스를 찾습니다.
  2. 만약 숫자 2가 배열에 없다면, [-1]을 반환합니다.
  3. lastIndexOf를 사용하여 배열에서 마지막으로 등장하는 숫자 2의 인덱스를 찾습니다.
  4. slice를 사용하여 첫 번째 2부터 마지막 2까지의 부분 배열을 잘라서 반환합니다.