문제
https://school.programmers.co.kr/learn/courses/30/lessons/42748
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
접근
이번에는 전에 이 문제 스터디하는 도중에 알게 된 Arrays.copyOfRange를 사용해서 풀어봤다.
Arrays.copyOfRange
Arrays.copyOfRange(배열, 시작 인덱스, 마지막 인덱스 +1)
안찾아보고 하다가 마지막 인덱스+1 안해주다가 이상한 짓 했다.. 외우기!
최종 코드
package week6.baek.sort;
import java.util.ArrayList;
import java.util.Arrays;
public class KNum {
public static ArrayList<Integer> solution(int[] array, int[][] commands) {
ArrayList<Integer> result = new ArrayList<>();
for (int[] command : commands){
int[] copy = Arrays.copyOfRange(array, command[0] -1, command[1]);
Arrays.sort(copy);
result.add(copy[command[2]-1]);
}
return result;
}
public static void main(String[] args) {
int[] array = {1, 5, 2, 6, 3, 7, 4};
int[][] commands = {{2, 5, 3}, {4, 4, 1}, {1, 7, 3}};
System.out.println(solution(array, commands));
}
}
'‡ CODING TEST STUDY ‡ > º 프로그래머스' 카테고리의 다른 글
[프로그래머스 | Java Lv.2] [복습] H-index (정렬) (0) | 2024.06.11 |
---|---|
[프로그래머스 | Java Lv.2] [복습] 가장 큰 수 (정렬) (0) | 2024.06.11 |
[프로그래머스 | Java Lv.2] [복습] 더 맵게 (힙 Heap) (0) | 2024.06.10 |
[프로그래머스 | Java Lv.2] 게임 맵 최단거리 (DFS/BFS) (0) | 2024.05.27 |
[프로그래머스 | Java Lv.2] 카펫 (완전 탐색) (0) | 2024.05.27 |