⌨️ 프로그래머스/코딩테스트 입문

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

하나둘세현 2024. 2. 17. 02:30
728x90

문제 

머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.

해결 과정

이 문제를 처음봤을때 생각보다 어렵게 생각했다. 그래서 시간이 많이 걸렸다.

문제는 이해갔지만 어떻게 풀지 막막해서   구글링을 해보고 다른 문제를 다 푼다음 다시 풀어봤다. 

 

피자 변수를 만들었다. 피자 조각은 1조각 부터 시작함으로 let pizza = 1;로 작성했다.

while문을 사용한 이유는 if문이 참일 경우 실행시키기 위해서 작성했다. 

 

if 문 안에 pizza * 6조각 그리고 사람 수로 나눠 떨어지면 피자가 리턴되게 작성해 문제를 풀어줬다.

 

pizza++를 한 이유는 while문이어서 했다. 만일 pizza ++를 안하면 while문 무한 루프에 빠져들기 때문이다. 

 

정답

function solution(n) {
    let pizza = 1;
    while(true) {
        if(pizza * 6 % n == 0) {
            return pizza;
        }
        pizza++;
    }
}

 

1h 10m

728x90