ror_coding

[Programmers] 콜라 문제 - 132267 본문

Algorithm/Python

[Programmers] 콜라 문제 - 132267

ro_rdil_31 2024. 10. 12. 11:08
728x90

lambda a, b, n : max(n-b, 0) // (a-b)*b  람다 사용 .. 꼭 이해 하자!!

 

Question

 

콜라를 받기 위해 마트에 주어야 하는 병 수 a, 빈 병 a개를 가져다 주면 마트가 주는 콜라 병 수 b, 상빈이가 가지고 있는 빈 병의 개수 n이 매개변수로 주어집니다. 상빈이가 받을 수 있는 콜라의 병 수를 return 하도록 solution 함수를 작성해주세요.

 

 

Point

 

  • lambda 사용 : Code 1
  • while 사용 : Code 2

 

 

Code 1 : lambda 사용

 

solution = lambda a, b, n : max(n-b, 0) // (a-b)*b

 

Code 2 : my code

 

def solution(a, b, n):
    answer = 0
    while n//a > 0 :
        answer += (n//a)*b
        n = (n//a)*b + n%a
        
    return answer

 

now me

On my github

 

728x90