[ Python Coding ] 백준 10162. 전자레인지
문제
입력 및 출력
실행 코드
t = int(input())
a = 0
b = 0
c = 0
while True:
if t >= 300: # 5분 = 300초
t -= 300
a += 1
elif t >= 60: # 1분 = 60초
t -= 60
b += 1
elif t >= 10: # 10초
t -= 10
c += 1
elif t == 0: # t가 0초일 때
print(a, b, c)
break
else: # t가 10보다 작은 경우
print(-1)
break
풀이
최소 버튼 조작 방법을 구해야한다.
- 가장 큰 시간을 가지고 있는 A버튼을 누를 수 있는지 확인한다.
- A버튼을 누르지 못한다면 B버튼을 누를 수 있는지 확인한다.
- B버튼도 못누르면 C버튼은 가능한지 확인한다.
- 1~3에서 확인했을 때, 버튼을 누를 수 있다면 해당 초를 t에서 빼주고(잔여 시간을 인지하기 위해), 해당 버튼의 개수를 센다.
- 그렇게 차감된 요리시간 t가 0이 되는 순간, 반복문을 빠져나오고 버튼의 개수를 출력한다.
- 만약 t가 C도 못누르는 10보다 작고 0도 아니라면, 반복문을 탈출하면서 -1을 출력한다. (요리시간이 남았음)
[ 문제 링크 ]
https://www.acmicpc.net/problem/10162
Author And Source
이 문제에 관하여([ Python Coding ] 백준 10162. 전자레인지), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hj5730/Python-Coding-백준-10162.-전자레인지저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)