카테고리 없음
7월 12일 수요일 TIL 회고록
tft4rollz
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) 답변 배열에 해당 사진의 추억점수 합 저장
- 답변 배열 반환