Techbrad

[백준] 전자레인지 파이썬 본문

Programming/코딩테스트

[백준] 전자레인지 파이썬

brad.min 2023. 9. 1. 09:35
반응형

https://www.acmicpc.net/problem/10162

 

10162번: 전자레인지

3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은

www.acmicpc.net

문제 접근

이 전에 풀어봤던 문제에서 조금 변형이 있다. 주어진 버튼 리스트 [300, 60, 10] 순서에 맞게 T를 나누고 몫을 카운트하면 최소 개수를 풀 수 있다. 하지만 -1을 출력하는 부분에서 예외 조건을 줘야 하는 것 같은데 이 부분은 많이 고민했다.

 

알고리즘

그리디 알고리즘

 

코드

T = int(input())
buttons = [300, 60, 10]
answer = []
if T % 10 !=0:
  print(-1)
else:
  for b in buttons:
    answer.append(T // b)
    T = T % b
  print(*answer)

근데 그냥 너무 어렵게 생각하지 말고 10의 배수가 아니면 -1이 출력하도록 했다. 끝~

반응형