1. 문제
머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
제한사항
1 ≤ n ≤ 100
2. 풀이
class Solution {
public int solution(int n) {
int answer = 0;
int pizza = 6;
while(pizza%n != 0){
pizza += 6;
}
answer = pizza/6;
return answer;
}
}
- 피자는 항상 6조각으로 잘라준다.
- 피자를 나눠 먹을 사람 수는 n
- n명이 피자를 남기면 안됨
- 모두 같은 수의 피자 조각을 먹어야 함
- 최소 몇 판 을 시켜야 하는지 반환
int pizza = 6;으로 pizza의 조각은 6조각임을 선언하고,
while(pizza % n != 0) pizza조각 6을 n으로 나눈 나머지 값이 0이 아님이 false값이 나타날때 까지
pizza += 6; 6조각 씩 추가하는 것으로 반복한다.
만약 피자를 나눠 먹을 사람 수 n이 10명이라면 while문을 통해 (pizza % 10 != 0)의 조건식이 False가 될 때 까지
pizza += 6;을 반복한다.
피자 조각pizza | % | 사람 수 n | != | 0 | 참/거짓 |
6 | % | 10 | != | 0 | True |
12 | % | 10 | != | 0 | True |
18 | % | 10 | != | 0 | True |
24 | % | 10 | != | 0 | True |
30 | % | 10 | != | 0 | False |
위 처럼 반복을 하게 된다.
그리고 여기서 pizza를 피자조각으로 놓고 구했으니 피자 한 판으로 따져야하니 pizza /6을하여 한 판의 값을 구해서 answer 에 넣고 answer을 반환해준다.
'Programers코테연습(Java)' 카테고리의 다른 글
정처기 실기 준비 중.. (0) | 2024.04.23 |
---|---|
[Programmers TIL 5일차] 진료 순서 정하기 (0) | 2024.04.23 |
[Programmers TIL 4일차] 문자열 정렬하기(2) (0) | 2024.04.22 |
[Programmers TIL 3일차] 문자열 정렬하기(1) (0) | 2024.04.21 |
[Programmers TIL 3일차] 옷 가게 할인받기 (0) | 2024.04.21 |