반응형
문제
https://www.acmicpc.net/problem/2839
코드
n = int(input())
cnt = 0
while n >= 0:
if n%5 == 0:
cnt += (n//5)
print(cnt)
break
n -= 3
cnt += 1
else:
print(-1)
설명
최소 개수로 배달을 하기 위해서는 5킬로짜리가 많을수록 좋다.
그러므로 만약 남은 무게가 5로 나누어진다면 최대한 사용을 해주어야 한다.
따라서 만약 n이 5로 나누어 떨어지면, 5로 나누어주고 반복문을 종료하고,
그렇지 않다면 3을 빼주어 5로 나누어 떨어질때까지 빼주면 된다.
반응형
'개발 연습장 > 백준 문제풀이' 카테고리의 다른 글
[파이썬, Python] 백준 1978: 소수 찾기 (0) | 2022.12.22 |
---|---|
[파이썬, Python] 백준 10757: 큰 수 A+B (0) | 2022.12.21 |
[파이썬, Python] 백준 2775: 부녀회장이 될테야 (0) | 2022.12.17 |
[파이썬, Python] 백준 10250: ACM 호텔 (0) | 2022.12.16 |
[파이썬, Python] 백준 2869: 달팽이는 올라가고 싶다 (0) | 2022.12.15 |