-문제: https://www.acmicpc.net/problem/4796

 

Silver 5 문제.  스스로 풀어서 맞힌 문제. 풀이는 그렇게 어렵지 않았다 

예제를 통해서 v가 p보다 크면 최소 l*(v//p)만큼 캠핑에서 머물 수 있고, 

나머지 날은 무조건 p보다 작으므로 l과의 크기 비교를 통해서 v를 더할지, l을 더할지 구분하면 된다 

 

-정답 풀이:

import sys
input = sys.stdin.readline

i=0
while True :
    l,p,v = map(int,input().split())
    if p == 0 and l ==0 and v==0 :
        break
    i+=1
    answer=0
    if v>=p :
        answer+= (v//p)*l
        v-=(v//p)*p
        
    if v < p:
        if v < l:
            answer += v
        else:
            answer += l
    print('Case {0}: {1}'.format(i,answer))

 

+ Recent posts