새소식

SOLVED

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

  • -
반응형

 

각 사진마다 포함된 인물의 그리움 점수를 합산하여 사진의 추억 점수를 계산합니다. 사진별로 포함된 인물과 각 인물의 그리움 점수가 주어지며, 각 사진의 추억 점수를 계산하여 배열에 담아 반환합니다.

  • name의 길이와 yearning의 길이는 같고, 3 이상 100 이하
  • photo의 길이는 3 이상 100 이하이며, photo[i]의 길이는 3 이상 100 이하

 


1. 각 사진을 순회하며 사진의 추억 점수를 계산한다. (reduce 메서드 사용) 

2. 하나의 사진에 포함된 인물들을 순회하며 추억 점수를 계산한다.  (reduce 메서드 사용) 

3. 사진에 있는 인물이 그리움 목록에 있는지 찾는다 (findIndex 사용)

4. 그리움 목록에 있다면 3번에서 찾은 인덱스로 그리움 점수를 추가해준다. 

5. 계산된 추억 점수를 배열에 추가한다. 


function solution(name, yearning, photo) {
    return photo.reduce((acc, cur) => {
         acc.push(cur.reduce((acc, cur) => {
            const index = name.findIndex((ppl) => ppl === cur);
            
            if (index != -1) {
                return acc += yearning[index];
            }
            return acc;
        }, 0))
        
        return acc;
    }, []);
}

 

 

 

반응형
Contents
-

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.