코딩테스트/문제풀이

[프로그래머스] 추억 점수

알렉스 페레이라 2024. 10. 17. 14:39

시간복잡도 조절문제다, 시간복잡도일때는 Array보다는 Map을 쓰자. 그리고 문제 조건을 꼼꼼히 보자


 


내 코드

import java.util.*;

class Solution {
    public int[] solution(String[] name, int[] yearning, String[][] photo) {
        HashMap<String, Integer> map = new HashMap<>();
        
        for(int i = 0; i < name.length; i++){
            map.put(name[i], yearning[i]);
        }
        
        int[] answer = new int[photo.length];
        for(int i = 0; i < photo.length; i++){
            for(int j = 0; j < photo[i].length; j++){
                if(map.get(photo[i][j]) != null){
                    answer[i] += map.get(photo[i][j]);    
                }
                
            }
        }
        return answer;
    }
}