본문 바로가기
프론트엔드로 가는 길/프로그래머스

37. 프로그래머스_주사위의 개수

by woody-j 2023. 2. 6.

코딩일지

작성자
  최주희 작성일자 2022.02.06
세부 코딩 내용 https://school.programmers.co.kr/learn/courses/30/lessons/120845
활동 기간 2022.02.06
문제 머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요.

나의 풀이   function solution(box, n) {
return box.map(item=>Math.floor(item/n) ).reduce((acc, cur) => { return acc *= cur; }, 1);
}
결과   통과
다른 풀이 function solution(box, n) {
    return box.reduce((acc,v) => acc * Math.floor(v / n), 1);
}

 
해석 map을 안쓰고 바로 reduce내부에서 나누기  
키워드 코딩내용 생각
  1. 필요한 조건 정리


  • box의 배열
  • 모서리의 길이 n
  • 상자에 들어갈 수 있는 주사위의 최대 개수






2. 풀이단계 정리


  • 상자 길이의 배열을 n으로 나눈 새 배열을 생성
  • reduce를 이용해서 기본값1에서 새 배열에 나온 수를 곱한다.
이번에 나 좀 잘한듯 ^^