한 걸음씩

[프로그래머스][JS] 피자 나눠 먹기 (2) 본문

Programmers

[프로그래머스][JS] 피자 나눠 먹기 (2)

winter17 2023. 5. 16. 21:51

https://school.programmers.co.kr/learn/courses/30/lessons/120815

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

풀이 과정

function solution(n) {
    // 6의 배수 순회하면서 n으로 나눈 나머지가 0일때 리턴하기
    for (let i = 1; i < 6 * n; i++){
        if ((6 * i) % n === 0){
            return i
        }
    }
}

6의 배수를 순화하면서 n으로 나눴을 때 0으로 나눠 떨어지는 수가 정답!

 

function solution(n) {
    let pizza = 6
    while(true){
        // pizza가 n으로 나누어 떨어지고(즉, 모든 사람이 같은 수의 조각을 먹을 수 있는 경우)
        // pizza가 6으로 나누어 떨어진다면(피자가 6조각 단위로 나눠진다면)
        if (pizza % n === 0 && pizza % 6 === 0) break
        pizza++
    }
    console.log(pizza) // 모두 같은 수의 피자 조각을 먹어야할 때 필요한 피자 판 수
    return pizza / 6 ;
}

리뷰

이 문제를 접한지가 1~2주가 지난 것 같은데 드디어 풀었다...! 

이게 뭐라고ㅠ 최소공배수 찾는 알고리즘으로 풀어볼까 하다가 다른 풀이방법 참고 안 하고 내 힘으로 풀고 싶었다

어려운 문제가 아닌데 왜이렇게 어려웠는지..