알고리즘

프로그래머스 - 추억 점수(Javascript)풀이

jaewoo 2024. 6. 5. 17:03

접근

 

1. 파라미터 name (사람 이름을 담은 문자열) , yearning (각 사람별 그리움 점수를 담은 정수배열), photo (이차원 문자열배열)

2. 여기서 name과 yearning의 배열 길이는 항상 같다는 것을 알 수 있고, 그 값을 Map 에 모두 담습니다.

3. 이차원 배열을 반복문 안에서 계속 순회하며 Map 에 만약 값이 있을 경우 그리움 점수가 있다 것을 알 수 있으니 해당 값을 다 더해서 answer  배열에 추가하면 된다.

 

 

 

function solution(name, yearning, photo) {
    var answer = [];
    var map = new Map();
    
    for(var i = 0; i < name.length; i++){
        map.set(name[i], yearning[i]);
    }
    
    photo.forEach((arr) => {
        let total = 0;  
        arr.forEach(n => {
            const temp = map.get(n);
            if(temp){
                total += temp;
            }
        });
        answer.push(total); 
    });
    return answer;
}