[백준/파이썬] 1173번 운동 풀이
업데이트:
문제 정보
- 문제 출처: 백준 온라인 저지
- 문제 링크: 1173번 운동
- 문제풀이 코드 GitHub 링크
- 제출 언어: Python 3
풀이
문제
운동 N분을 해야 하며,
운동하면 맥박이 T 증가하고 쉬면 R 감소합니다.
맥박은 최소 m, 최대 M 범위를 벗어날 수 없습니다.
총 몇 분이 걸리는지 구하는 문제입니다.
코드
N,m,M,T,R=map(int,input().split())
t,c=0,m
while m+T<=M and N>0:
t+=1
if c+T<=M:
N-=1
c=min(c+T,M)
else:c=max(m,c-R)
print(t if t>0 else -1)
설명
운동 가능 조건(현재맥박 + T <= M)이면 운동 1분을 진행하고,
불가능하면 휴식 1분으로 맥박을 낮춥니다.
처음부터 m + T > M이면 운동 자체가 불가능하므로 -1을 출력합니다.
댓글남기기