문제 설명
https://school.programmers.co.kr/learn/courses/30/lessons/250121

제한 사항

입출력 예

풀이
import java.util.Arrays;
import java.util.Map;
class Solution {
public int[][] solution(int[][] data, String ext, int val_ext, String sort_by) {
Map<String, Integer> extMap = Map.of("code", 0,
"date", 1,
"maximum", 2,
"remain", 3);
return Arrays.stream(data)
.filter(arr -> arr[extMap.get(ext)] < val_ext)
.sorted((int[] arr1, int[] arr2) -> arr1[extMap.get(sort_by)] - arr2[extMap.get(sort_by)])
.toArray(int[][]::new);
}
}
후기
오랜만에 스트림을 사용하려니까 많이 잊어버린 것 같다... 다시 꾸준히 풀어야 겠다. Comparator와 함수형 인터페이스에 대해서 더 공부해야겠다.
'코딩테스트 (프로그래머스) > Java' 카테고리의 다른 글
| [프로그래머스][Java][Lv. 1] [PCCE 기출문제] 9번 / 이웃한 칸 (0) | 2023.12.27 |
|---|---|
| [프로그래머스][Java][Lv. 2] [PCCP 기출문제] 3번 / 아날로그 시계 (0) | 2023.12.26 |
| [프로그래머스][Java][Lv. 1] [PCCP 기출문제] 1번 / 붕대 감기 (0) | 2023.12.24 |
| [프로그래머스][JAVA][Lv. 2] 숫자 변환하기 (0) | 2023.11.05 |
| [프로그래머스][JAVA][Lv. 2] 롤케이크 자르기 (0) | 2023.11.04 |