[프로그래머스] 피자 나눠 먹기 (3)
카테고리 : 컴퓨터 공학
태그: programmers · Code Refactoring · 참고 할 만한 다른 사람의 코드 · 코딩 기초 트레이닝 · 프로그래머스 · 코딩테스트 연습 · JavaScript · 피자 나눠 먹기 (3) · js 피자 나눠 먹기 (3)
태그: programmers · Code Refactoring · 참고 할 만한 다른 사람의 코드 · 코딩 기초 트레이닝 · 프로그래머스 · 코딩테스트 연습 · JavaScript · 피자 나눠 먹기 (3) · js 피자 나눠 먹기 (3)
문제 설명
머쓱이네 피자가게는 피자를 두 조각에서 열 조각까지 원하는 조각 수로 잘라줍니다. 피자 조각 수 slice
와 피자를 먹는 사람의 수 n
이 매개변수로 주어질 때, n
명의 사람이 최소 한 조각 이상 피자를 먹으려면 최소 몇 판의 피자를 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
제한사항
- 2 ≤
slice
≤ 10 - 1 ≤
n
≤ 100
입출력 예
slice | n | result |
---|---|---|
7 | 10 | 2 |
4 | 12 | 3 |
입출력 예 설명
입출력 예 #1
- 10명이 7조각으로 자른 피자를 한 조각 이상씩 먹으려면 최소 2판을 시켜야 합니다.
입출력 예 #2
- 12명이 4조각으로 자른 피자를 한 조각 이상씩 먹으려면 최소 3판을 시켜야 합니다.
나의 풀이
function solution(n) {
var pizza = 0;
if (n % 6 == 0) {
return n / 6;
} else if (n % 3 == 0) {
return n / 3;
} else if (n % 2 == 0) {
return n / 2;
} else {
return (pizza = n);
}
return pizza;
}
나의 두번째 풀이(Code Refactoring)
function solution(n) {
for (i = 1; i <= n; i++) {
if ((6 * i) % n === 0) {
return i;
}
}
}
// 이전 코드에선 여러 조건문으로 코드가 지저분했다
// 6개로 나눈 조각중에서 모든 사람이 피자를 한 조각 이상 먹으려면 i만큼의 피자 갯수가 필요하다
참고 할 만한 다른 사람의 코드
const solution = (n) => {
let piece = 6;
while (true) {
if (piece % n === 0) {
break;
}
piece += 6;
}
return piece / 6;
};
//while문을 이용한 방법 , 나머지가 0이 될때까지 무한루프