728x90
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 |