haju__log
[python][백준/BOJ] 2839번 : 설탕 배달 본문
반응형
https://www.acmicpc.net/problem/2839
✅ 문제 풀이
- 조건문 분기를 어떻게 해줄지 고민을 꽤 한 문제이다.
- 일단 5의 배수이면 바로 n//5의 값을 result에 저장한 후 while문 종료한다.
- 5의 배수가 아니면 3을 계속해서 줄여나가면서 0이 될 때까지 반복한다. (3을 빼주면 result값을 하나씩 증가해줘야함, 설탕 3kg짜리를 하나씩 배달하는 경우이므로)
- 마지막 조건에 걸리는 게 그냥 여기서 코드를 마무리하면 예제로 4가 들어올 경우 2가 출력된다.
- n이 0으로 딱 맞아 떨어져야하는데, n값이 -1로 끝나므로 마지막 조건을 추가해줬다.
- while문을 다 돌고나서 n이 값이 0으로 끝나지 않았다면 -1을 출력하게 조건을 주었다.
import sys
n=int(sys.stdin.readline())
result=0
while n>=0:
if n%5==0:
result+=n//5
break
n-=3
result+=1
if n<0 :
print(-1)
else:
print(result)
반응형
'BOJ_백준 > 그리디' 카테고리의 다른 글
[python][백준/BOJ] 4796번 : 캠핑 (0) | 2023.10.01 |
---|---|
[python][백준/BOJ] 11399번 : ATM (0) | 2023.09.06 |