본문 바로가기

Java/프로그래머스

[JAVA] 프로그래머스 - 수열과 구간 쿼리 2

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

 

배열 복사 Arrays.copyOf() 함수 

 

- 특정 배열의 원하는 길이만큼 새로운 배열로 복사하는 메소드 

- 새로운 배열 = Arrays.copyOf(원본 배열, 원본 배열에서 복사하고 싶은 요소들의 길이)

정답 

 

import java.util.*;

class Solution {
    public int[] solution(int[] arr, int[][] queries) {
        
        int[] answer = new int[queries.length];
        
        for(int i=0; i<queries.length; i++)
        {
            int s = queries[i][0];
            int e = queries[i][1];
            int k = queries[i][2];
        
            int temp[] = Arrays.copyOfRange(arr,s,e+1);
            Arrays.sort(temp);
            answer[i] = -1;
            
            for(int j=0; j<temp.length; j++)
            {
                if(k<temp[j])
                {
                    answer[i] = temp[j];
                    break;
                }
            }
            
        }
        return answer;
    }
}