프로그래머스] Java 코딩테스트 - 피자 나눠 먹기(2)

yihyun·2024년 8월 2일

코딩테스트

목록 보기
7/105
post-thumbnail

피자 나눠먹기(2)

✅ 문제설명

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

✅ 제한사항

1 ≤ n ≤ 100

🔽 소스코드 1

실행시간 : 0.02ms ~ 0.03ms

while 문을 활용해 무한반복을 시켜준 뒤
if문으로 6(피자조각)을 answer(1씩증가)와 곱해준 뒤 인원수로 나눠
나머지가 0인 경우 값을 리턴하도록 작성
(answer가 1씩 증가할 경우 피자가 1판씩 늘어난다고 생각하면 된다!
→ 만약 6명일 경우 (6*1) % 6 = 0 이므로 피자 한판으로 해결 가능!

class Solution {
    public int solution(int n) {
        int answer = 1;
        
        while(true) {
        	if(6*answer % n == 0) {
        		return answer;
        	}
        	
        	answer++;
        }
       
    }
}

🔽 소스코드 2

실행시간 : 0.02ms ~ 0.04ms

if문을 사용해 경우의 수를 만족하면 값을 리턴하도록 코드 구성
(피자는 6조각 이므로 6으로 나눈 나머지가 0이 되는 경우로 조건 작성)

class Solution {
    public int solution(int n) {
        int answer = 0;
        
        if (n % 6 == 0) {
			answer = n / 6;
		} else if (n % 3 == 0) {
			answer = n / 3;
		} else if (n % 2 == 0) {
        	answer = n / 2;
    	} else {
    		answer = n / 1;
    	}
        return answer;
    }
}
profile
개발자가 되어보자

0개의 댓글