프로그래머스
[JavaScript] 피자 나눠 먹기(1) - 프로그래머스
jjangsh
2024. 7. 18. 20:54
문제 :
내 풀이 :
function solution(n) {
let pizza = 1;
for(let i = 1; i <= 100; i++) {
if(i * 7 / n >= 1) {
pizza = i;
break;
}
}
return pizza;
}
피자의 초깃값을 1로 선언해두고, 반복문을 이용해 반복 변수 i를 피자 조각 개수 나누기 사람 수를 했을 때 1보다 크거나 같을 때 피자 판 수를 i개로 바꾸도록 하고 반복문을 정지시켰다.
i 를 100보다 작거나 같을 때까지 반복 시킨 이유는 문제에서 주어진 제한사항이 사람 수는 100명보다 작거나 같다고 되어있기 때문이었다.
통과는 했지만 만족스럽지 않았기에 다른 사람의 풀이를 보았다.
다른 사람의 풀이 :
function solution(n) {
return Math.ceil(n / 7)
}
너무 간단하게 풀어버려서 힘이 풀렸다.
나도 나중에 써먹기 위해 Math.ceil()을 검색해보았다.
Math.ceil() : 입력받은 숫자보다 크거나 같은 정수 중 가장 작은 정수를 리턴한다.
즉, 입력받은 숫자를 올림한 정수를 리턴하는 함수다.(음수 포함)
Math.ceil(1.222 * 10) / 10; 의 결과는 1.3
Math.ceil(1.222 * 100) / 100; 의 결과는 1.23
Math.ceil(1222 / 10) * 10; 의 결과는 1230
Math.ceil(1222 / 100) * 100; 의 결과는 1300
또한, Math.ceil()을 이용하여 위의 예시와 같이 소수점 아래에서 값을 올리거나 10단위, 100단위에서 올림을 처리 할 수 있다.