본문 바로가기

Python/Python 문제

Python 문제 67

#문제7
주스 1잔을 만들려면 사과 3개와 당근 1개가 필요합니다. 그런데 키우는 토끼에게 먹이를 주기 위해 사과와 당근 종류에 상관없이 k개를 빼놓으려고 합니다. 주스는 최대한 많이 만들수록 좋습니다.

사과 개수 num_apple과 당근 개수 num_carrot, 토끼에게 줄 먹이 개수 k가 주어질 때 주스를 최대 몇 잔 만들 수 있는지 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되어있기 때문에, 몇몇 입력에 대해서는 올바르게 동작하지 않습니다. 주어진 코드에서 _**한 줄**_만 변경해서 모든 입력에 대해 올바르게 동작하도록 수정하세요.

---
#####매개변수 설명
사과 개수 num_apple과 당근 개수 num_carrot, 토끼에게 줄 먹이 개수 k가 solution 함수의 매개변수로 주어집니다.
* 사과 개수 num_apple과 당근 개수 num_carrot는 0 이상 200 이하인 정수입니다.
* 토끼에게 줄 먹이 개수 k는 0 이상 `num_apple+num_carrot` 이하인 정수입니다.

---
#####return 값 설명
주스를 최대 몇 잔 만들 수 있는지 return 해주세요.

---
#####예시

| num_apple | num_carrot | k | return |
|----|---|---|--------|
| 5  | 1 | 2 | 1   |
| 10 | 5 | 4 | 2   |

#####예시 설명
예시 #1
사과 2개를 먹이로 주면 사과 3개, 당근 1개가 남습니다. 남은 재료로 주스를 1잔 만들 수 있습니다.

예시 #2
사과 2개와 당근 2개를 먹이로 주면 사과 8개, 당근 3개가 남습니다. 남은 재료로 주스를 2잔 만들 수 있습니다.

문제

def solution(num_apple, num_carrot, k):
    answer = 0
    
    if num_apple < num_carrot * 3:
        answer = num_apple // 3
    else:
        answer = num_carrot    

    num_apple -= answer * 3
    num_carrot -= answer

    i = 0
    while k - (num_apple + num_carrot + i) > 0:
        if i % 4 == 0:
            answer += 1
        i = i + 1
        
    return answer

 

def solution(num_apple, num_carrot, k):
    answer = 0
    
    if num_apple < num_carrot * 3:
        answer = num_apple // 3
    else:
        answer = num_carrot    
    
    num_apple -= answer * 3 # answer=3 num_apple=1 num_carrot=2
    num_carrot -= answer
    
    i = 0
    while k - (num_apple + num_carrot + i) > 0: # =1
        if i % 4 == 0:
            answer -= 1
        i = i + 1
    
    return answer

'Python > Python 문제' 카테고리의 다른 글

Python 문제 69  (0) 2021.11.27
Python 문제 68  (0) 2021.11.27
Python 문제 66  (0) 2021.11.27
Python 문제 65  (0) 2021.11.27
Python 문제 64  (0) 2021.11.27