카테고리 없음

[프로그래머스] 2의 영역 (Java, Python)

garamdev 2025. 6. 24. 11:12

문제

https://school.programmers.co.kr/learn/courses/30/lessons/181894

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

코드(Java)

import java.util.Arrays;

class Solution {
    public int[] solution(int[] arr) {
        int start = -1, end = -1;
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] == 2) {
                if (start == -1) start = i;
                end = i;
            }
        }
        if (start == -1) {
            return new int[]{-1};
        }
        return Arrays.copyOfRange(arr, start, end + 1);
    }
}

코드(Python)

def solution(arr):
    try:
        start = arr.index(2)
        end = len(arr) - 1 - arr[::-1].index(2)
        return arr[start:end+1]
    except ValueError:
        return [-1]

728x90