제출 답안 - 정답
def solution(need, give, have):
answer = 0
while have >= need:
answer += have // need * give
have = (have // need) * give + have % need
return answer
다른 사람의 답안
solution = lambda a, b, n: max(n - b, 0) // (a - b) * b
한꺼번에 계산하지 않고 a개만 팔고 b개를 받는 과정은 결국 a-b 개씩 병을 소비하는 것으로 생각,
첫번째 진행할 때는 a개만 소비되기 때문에, b만큼 못받음(-b),
그 조건을 먼저 계산 n-b 반복횟수는 n-b // (a-b) 여기에 받는 병수 b 곱한 것
'코딩 테스트 (Coding Test)' 카테고리의 다른 글
[프로그래머스] 숫자 짝꿍 (0) | 2023.01.09 |
---|---|
[프로그래머스] 삼총사 (0) | 2023.01.09 |
[프로그래머스] - 옹알이 (2) (0) | 2023.01.09 |
[프로그래머스] 햄버거 만들기 (0) | 2023.01.06 |
[프로그래머스] 푸드 파이트 대회 (0) | 2023.01.05 |