[프로그래머스] [PCCE 기출문제] 10번 / 데이터 분석(250121)

lhs's avatar
Dec 29, 2024
[프로그래머스] [PCCE 기출문제] 10번 / 데이터 분석(250121)
 

1. 문제 풀이 아이디어

  • Map을 활용하여 데이터를 효율적으로 관리하고 처리할 수 있다.

2. 나의 정답 코드

class Solution { public int[][] solution(int[][] data, String ext, int val_ext, String sort_by) { List<int[]> list = new ArrayList<>(); Map<String, Integer> map = new HashMap<>() {{ put("code", 0); put("date", 1); put("maximum", 2); put("remain", 3); }}; for (int i = 0; i < data.length; i++) { if (data[i][map.get(ext)] < val_ext) { list.add(data[i]); } } list.sort((o1, o2) -> o1[map.get(sort_by)] - o2[map.get(sort_by)]); return list.toArray(new int[list.size()][]); } }

3. 정리

  • Map에 컬럼 이름과 인덱스를 저장하여 컬럼을 효율적으로 참조한다.
  • data 배열을 순회하면서, ext 컬럼의 값이 val_ext보다 작은 행을 list에 추가한다.
  • listsort_by 컬럼의 값을 기준으로 오름차순 정렬한다.
  • 정렬된 결과를 배열 형태로 변환하여 반환해 문제를 해결한다.
Share article

LHS's Study Space