그리디알고리즘
n=int(input())
a,b,c=0,0,0
if n%10 :
print(-1)
else :
while 1 :
if n==0 :
print(a,b,c)
break
if n//300 :
temp=n//300
n-=300*(temp)
a+=temp
elif n//60 :
temp=n//60
n-=60*(temp)
b+=temp
else :
temp=n//10
n-=10*(temp)
c+=temp
이 문제에서는 세가지의 버튼 300초,60초,10초의 버튼이 주어진다. 앞 두버튼은 가작 작은 초의 버튼인 10초 버튼으로 표현이 가능하다. 그렇기 때문에 10초로 표현하지 못하는 부분에 대해서 -1을 출력하게 해주었다. 그리고나서 버튼 최소값을 구하는 코딩을 해주었다.