ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 7월 12일 수요일 TIL 회고록
    카테고리 없음 2023. 7. 13. 01:30

    프로그래머스 Lv.1 코딩테스트


    추억 점수

    문제 설명 및 제한 사항, 입출력 예

    풀이

    import java.util.HashMap;
    import java.util.Map;
    
    class Solution {
    
      public int[] solution(String[] name, int[] yearning, String[][] photo) {
          int[] answer = new int[photo.length];
          Map<String,Integer> list = new HashMap<>();
          for (int i = 0 ; i < name.length; i++) {
            list.put(name[i],yearning[i]);
          }
    
          for (int i = 0; i < photo.length; i++) {
            int sum = 0;
            for (String str : photo[i]) {
              sum += list.getOrDefault(str,0);
              answer[i] = sum;
            }
          }
          return answer;
        }
      }

     

    사진의 개수만큼 답변 배열 초기화

    - 이름과 추억점수를 매치시킬 map 선언 후 이름(name)에 해당하는 점수(yearning) map에 집어넣기

    - 각 사진(photo[i])에 있는 이름(str)을 탐색하며:

      1) map에서 해당되는 이름을 찾아 추억 점수를 sum에 가산 (없는 경우 0점 처리)

      2) 답변 배열에 해당 사진의 추억점수 합 저장

    - 답변 배열 반환

Designed by Tistory.