4796번: 캠핑
입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, L, P, V를 순서대로 포함하고 있다. 모든 입력 정수는 int범위이다. 마지막 줄에는 0이 3개 주어진다.
www.acmicpc.net
문제 설명
입력으로 L, P, V를 입력받는다. ( 1 < L < P < V )
이는 총 V일간의 휴가기간동안 캠핑장을 연속하는 P일 중, L일동안 이용할 수 있다는 뜻이다.
예를 들어, V = 20, P = 8, L = 5 이면,
총 휴가기간 20일 중 캠핑장을 연속하는 8일중 5일간 이용할 수 있다는 뜻이다.
그래서 처음 5일을 이용하고 그 뒤 3일은 이용을 못하고 다시 5일을 이용하고 이런 식으로 전개가 된다.
풀이 과정
캠핑장을 P일 꽉채워서 이용할 수 있는 개수는 V // P가 될 것이다.
그리고 나머지는 꽉 채우지 못하고 남은일수만큼 캠핑장에 있게 된다.
단, 남은일수가 캠핑장을 이용할 수 있는 일수보다 많이 남았다면 이용할 수 있는 날만큼만 이용하게 된다.
(예를 들어, 남은 일수가 3일이고 이용할 수 있는 날짜가 1일이면 1일만 이용하게 되는 것이다.
예시로 캠핑장이 연속하는 4일중 1일만 이용가능하고 3일은 이용 불가능한 경우이다.
이를 if문으로 표현하였다.)
i = 0
while True:
i+=1
l, p, v = map(int, input().split())
if l==0 and p==0 and v==0:
break
a = v//p
b = v%p
if l<b:
b = l
print("Case %d: %d" %(i, a*l+b))
HongEunho - Overview
📖 Android, Java, Kotlin, Algorithm. HongEunho has 15 repositories available. Follow their code on GitHub.
github.com
전체 문제 & 코드는 위의 깃에 정리되어 있습니다.
팔로우 & 맞팔은 환영입니다 !
'Algorithm > Greedy' 카테고리의 다른 글
[백준] 1449 수리공 항승 (Python 파이썬) (0) | 2021.04.10 |
---|---|
[백준] 1439 뒤집기 (Python 파이썬) (0) | 2021.04.10 |
[백준] 1783 병든 나이트 (Python 파이썬) (0) | 2021.04.09 |
[백준] 2217 로프 (Python 파이썬) (0) | 2021.04.09 |
[백준] 13305 주유소 (Python 파이썬) (0) | 2021.04.08 |