머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n
이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요.
n
≤ 100n | result |
---|---|
7 | 1 |
1 | 1 |
15 | 3 |
입출력 예 #1
입출력 예 #2
입출력 예 #3
const solution = (n) => Math.ceil(n/7);
/* 내가 처음 작성했던 코드이다. 화살표 함수를 이용하여 작성해 주었다.
1판에 7조각으로 나뉜다고 했으니까 n/7해서 반올림해주면 된다고
생각했다. Math.ceil을 이용하여 소수점은 다 반올림 시켜주는 방식을 선택했다. */
function solution(n) {
return Math.ceil(n/7);
}
// 위와 같은 코드이다. function 키워드를 써서 작성한 코드이다.
function solution(n) {
return ~~(n / 7) + (n % 7 ? 1 : 0);
}
/* 다른분의 코드를 보다가 신박해서 작성해보았다. 틸트 연산자를 통해서 n/7을 해주면 math.floor와
동일한 결과값을 나타낸다. 우리가 알고싶은것은 반올림이기 때문에 소수점을 내려주는 math.floor,
틸트연산자하고는 맞지않다. 그래서 이 코드 작성자 분은 뒤에 삼항연산자를 통해서 n을 7로 나눈 나머지가 참이면
즉, 0이면 false 나머지 숫자이면 true를 반환해줄테니 나머지가 있다면 1을 더해주고 없다면 0을 더해주라는
말이다. 신기했다! */
출처 : 프로그래머스 스쿨 | 코딩테스트 연습
https://school.programmers.co.kr/learn/courses/30/lessons/120814