Study/Java

[Java 자바] 프로그래머스 Lv 0 - 피자 나눠 먹기 (2)

1.jun 2024. 10. 3. 12:18
728x90
반응형

 

 

 

코딩테스트 연습 | 프로그래머스 스쿨

개발자 취업의 필수 관문 코딩테스트를 철저하게 연습하고 대비할 수 있는 문제를 총망라! 프로그래머스에서 선발한 문제로 유형을 파악하고 실력을 업그레이드해 보세요!

school.programmers.co.kr

 

목차
  1. 문제 설명
  2. 입출력 예시
  3. 문제 풀이

 

 


1. 문제 설명

 

 

728x90

 

문제 설명

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

 

 

제한사항

  • 1 ≤ n ≤ 100

 

 

 

 

 


2. 입출력 예시

 

 

 

 

입출력 예시

#1 

6명이 모두 같은 양을 먹기 위해 한 판을 시켜야 피자가 6조각으로 모두 한 조각씩 먹을 수 있습니다.

 

#2

10명이 모두 같은 양을 먹기 위해 최소 5판을 시켜야 피자가 30조각으로 모두 세 조각씩 먹을 수 있습니다.


#3

4명이 모두 같은 양을 먹기 위해 최소 2판을 시키면 피자가 12조각으로 모두 세 조각씩 먹을 수 있습니다.

 

 

 

 


3. 문제 풀이

반응형

 

문제 풀이

1. for문을 사용해서 1부터 n까지 1씩올리면서 반복한다.

 

2. if문을 사용하여, 피자 i 판의 총 조각 수를 n명으로 나누었을 때, 나머지가 없다면, answer에 i를 넣고 break으로 반복을 종료한다.

 

3. answer을 반환한다.

 

 

 

class Solution {
    public int solution(int n) {
        int answer = 0;
        
        for(int i=1; i<=n; i++){
            if(i*6%n==0){
                answer = i;
                break;
            }
        }
        
        return answer;
    }
}

 

 

 

 

메모

break을 사용하지 않는다면,

 

i × 6 % n 이 식에서

 

n이 6일 때,

 

i가 1 ~ 6 모두 나머지 값은 0을 받는다.

 

그러면, answer은 최솟값이 1이 아닌 6을 반환하여 오류가 일어난다.

 

 

 

 

 

 

 

728x90
반응형