Programmers/2단계

콜라문제

Snowboarder 2023. 3. 29. 17:32

https://school.programmers.co.kr/learn/courses/30/lessons/132267

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제해석

  • 산수 문제
  • 조금더 생각 해보면 되지 않았나 조금 아쉬운 문제 끝까지 해볼 것

 

문제풀이

def solution(a, b, n):
    answer = 0
    # 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다.
    # 빈 병의 개수가 콜라를 받기 위해서 필요한 개수보다 크면 반복한다
    while (n >= a):
        remain_bottle = n % a
        n = (n//a) * b # 마트에서 받은 콜라의 수
        answer += n # 받은 걸 answer에 +
        n += remain_bottle # 남아있는 병을 더해줘서 다음에 마트갈 때 이용
    return answer
def solution(a, b, n):
    answer = 0

    num = n
    while num >= a:
        cnt = num // a
        num -= (cnt * a)
        num += (cnt * b)
        answer += (cnt * b)


    return answer

'Programmers > 2단계' 카테고리의 다른 글

[문자열] 이진 변환 반복하기  (0) 2023.01.06