728x90
2839번: 설탕 배달
상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그
www.acmicpc.net
n=int(input())
result = 0
break_chk = False
while n>0:
#print(n)
if n % 5 == 0:
result += n // 5
break_chk = True
break
else:
n -= 3
result += 1
if n==0:
break_chk = True
if break_chk:
print(result)
else:
print(-1)
5kg짜리가 더 많아야하므로 나누어지면 5로 나눈 수를 더하고, 나누어지지 않는 경우에는 3씩 빼면서 계속 확인한다.
break_chk를 넣은 이유는 while 문의 조건이 n이 양수일때만 돌아가므로 음수로 내려가면 끝나게 된다.
n=0 인경우는 딱 맞아 떨어진 경우이므로 체크해서 이후 결과값을 출력할때 사용한다.
이방법 말고 3과 5를 중복하여 만든 조합으로 짤수있을거같긴하다.
'STUDY > Algorithm' 카테고리의 다른 글
[백준] 2615 오목 (0) | 2021.02.09 |
---|---|
[백준] 1011 Fly me to the Alpha Centauri (0) | 2021.02.07 |
[백준] 2775 부녀회장이 될테야 (0) | 2021.02.07 |
[백준] 1193 분수찾기 (0) | 2021.02.07 |
[백준] 2504 괄호의값 (0) | 2021.02.07 |