728x90
1. 피자 나눠먹기 (1)
머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요.
나의 풀이
def solution(n):
answer = 0
if n <= 7 :
answer = 1
elif n%7 ==0 :
answer = int(n/7)
else :
answer = int(n/7)+1
return answer
제출하고 다른 분들의 풀이를 보다보니까 너무 if문으로 조건을 나눠놓은것 같다.
굳이 elif까지 사용하지 않고 첫 if 문을 n % 7 == 0 으로 준 뒤 answer 계산을 int (n/7) 로 두면 된다.
코딩을 간결하게 하는 방법으로 // 를 쓰셨던데 이게 무슨 연산자인지 궁금해서 찾아보았다.
// 연산자는 나눗셈 후 몫을 리턴하는 연산자이다.
ex) 7 // 4 > 1
int로 정수로 만들어줄 필요가 없이 위와 같은 문제에 사용할 수 있다.
2. 피자 나눠먹기 (2)
머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때,
n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
나의 풀이
def solution(n):
answer = 1
while True:
if answer*6 % n == 0:
break
else :
answer += 1
return answer
6조각으로 나뉜 피자를 모두 같은 개수를 먹어야한다고하여 6을 곱하여 전체 조각수를 구하고 이를 사람수로 나누면 나머지가 0이되는 피자 판 수 를 구해야겠다고 생각하며 코드를 짰다.
개선점 : 굳이 while True를 주고 if 조건이 맞을 때 break 할 필요없이 while 조건을 answer*6%n으로 주면 그 값이 0일때 while문이 끝나도록 할 수 있다.
2. 피자 나눠먹기 (3) - JavaScript
머쓱이네 피자가게는 피자를 두 조각에서 열 조각까지 원하는 조각 수로 잘라줍니다. 피자 조각 수 slice와 피자를 먹는 사람의 수 n이 매개변수로 주어질 때, n명의 사람이 최소 한 조각 이상 피자를 먹으려면 최소 몇 판의 피자를 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요
function solution(slice, n) {
if(n%slice==0){
return parseInt(n/slice);
}else{
return parseInt(n/slice) + 1;
}
}
728x90
'프로그래머스' 카테고리의 다른 글
프로그래머스 Python 모음제거 / x만큼 간격이 있는 n개의 숫자 (4) | 2023.11.22 |
---|---|
프로그래머스 Python 최댓값 만들기 / Lv2 최댓값과 최솟값 (1) | 2023.11.20 |
프로그래머스 Python 대소문자 바꿔서 출력하기/ 배열에서 문자열 대소문자 변환하기 (6) | 2023.11.20 |
프로그래머스 삼각형의 완성조건 (2) | 2023.11.20 |
프로그래머스 Python3 코드 처리하기 (7) | 2023.11.18 |