[프로그래머스] 위장 - JavaScript

이수동·2021년 12월 17일
0
post-thumbnail

프로그래머스 Level 2 - 위장


📌 문제 설명


📌 생각한 풀이 방법

  1. 부위에 맞게 존재하는 아이템 갯수를 찾는다
  2. 해당 부위에 맞는 (갯수 + 1)를 모두 곱한 값에서 -1을 한다.

📌 풀이

function solution(clothes) {
  let answer = 1;
  let items = {};

  // 존재하는 아이템의 갯수를 items에 추가함
  for (let i = 0; i < clothes.length; i++) {
    let current = clothes[i];
    if (items[current[1]]) {
      items[current[1]]++;
    } else {
      items[current[1]] = 1;
    }
  }

  // 모든 부위의 (갯수 + 1)를 곱한 후 -1을 하면 모든 경우가 계산된다.
  for (const item in items) {
    answer *= items[item] + 1;
  }

  return answer - 1;
}
profile
기록을 통한 성장하기 🧐

0개의 댓글