[프로그래머스] 추억 점수 자바 코드

mango·2023년 9월 9일
0

프로그래머스 level 1

목록 보기
14/17

너무 쉬운 문제라 안올릴까 하다가, 자연스레 for 확장문을 사용했다는 사실에 기록해보기

* Things I learnt

- for 확장문

for( int i : array){
// i는 index가 아닌 array의 데이터이다.
}
->int, Integer 등 primitive 타입과 reference 타입 둘다 사용 가능하고,
오른쪽에는 List와 배열 둘다 사용 가능하다.

* 자바코드

import java.util.*;

class Solution {
    public int[] solution(String[] name, int[] yearning, String[][] photo) {
        int[] answer = new int[photo.length];
        //1. 정렬하는게 빠를까 
        //2. HashMap에 넣는게 빠를까
        
        HashMap<String, Integer> nameHm = new HashMap<String, Integer>();
        for(int i = 0; i < name.length; i++){
            nameHm.put(name[i], yearning[i]);
        }
        
        for(int i = 0; i < photo.length; i++){
            int result = 0;
            for(String now : photo[i]){
                if(nameHm.containsKey(now))
                    result += nameHm.get(now);
            }
            answer[i] = result;
        }
        
        return answer;
    }
}
profile
앎의 즐거움을 아는 나는 mango ♪

0개의 댓글