1. 문제
프로그래머스 알고리즘 문제풀이 - 자바스크립트 [ 주사위의 개수 ]

2. 시도해본 것들

처음에 문제를 읽고 이해하는데 조금 시간이 걸렸다.

입체도형이라니 너무 어려워보여서 포기하고 넘어갈까?

그래도 한번 시도라도 해봐야지! 하고 머리를 굴려보았다.

 

box [ 10, 8 , 6 ] , n=3정육면체 , 12개  

 

해당 박스에 12개가 들어가는 과정을 머리속으로 생각했다.

 

3. 해결과정

가로10 세로8 높이6 일때 3정육면체는

가로10에서 3개 들어가고

세로8에서 2개 들어가고

높이6에서 2개 들어가네?

3*2*2=12

 

모두 n정육면체로 나눴을때 몫의 값!

 

몫을 구하는 함수는 parseInt()이므로 이것만 있으면 답을 구할 수 있다!

 

 

4. 알게 된 점

나의 코드

function solution(box, n) {
    return parseInt(box[0]/n) *  parseInt(box[1]/n) * parseInt(box[2]/n)
}

난생 처음으로 1줄로 문제풀어서 뿌듯!ㅎㅎ

 

남의 코드

function solution(box, n) {
    let [width, length, height] = box;
    return Math.floor(width / n) * Math.floor(length / n) * Math.floor(height / n);
}

나랑 똑같지만,  변수명을 이쁘게 적어두셨다

function solution(box, n) {
    return box.reduce((acc,v) => acc * Math.floor(v / n), 1);
}

누산기 사용

function solution(box, n) {
    return box.map(v=>~~(v/n)).reduce((a,v)=>a*v,1);
}

맵핑......~~ 사용은 처음봐서 이해가 안되는 코드ㅠ

728x90

+ Recent posts