[Python]BaekJoon.AC
[Python]백준 BaekJoon.AC 2839 : 설탕 배달(for문, if문, reversed())
스뇨잉
2022. 1. 7. 14:40
728x90
728x90
https://www.acmicpc.net/problem/2839
2839번: 설탕 배달
상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그
www.acmicpc.net
마음과 달리 조금 복잡한 코드가 나왔다...
그냥 while문을 돌리는게 나았을 것 같기도 하다.
처음 N값을 5로 나눠 if문을 돌린 이유는, N이 4미만인 경우를 걸러내기 위해서다.
그 와중에도 3키로일 수도 있으니 if를 한 번 더 사용해줬다.
그 후부턴 N을 5로 나눈 몫으로 for문을 돌려줬다. 0<= i <=fkg로 범위를 설정해주는게 중요하다. <가 아닌 <=으로.
개수가 최대한 적어야 하니 reversed()를 이용해 fkg부터 0까지 범위를 뒤집어줬다.
N = int(input())
fkg = N//5
if fkg == 0:
if N % 3 == 0:
print(N//3)
else:
print(-1)
quit()
for i in reversed(range(fkg+1)):
temp = N - 5*i
if temp % 3 == 0:
print(i + temp//3)
quit()
print(-1)
728x90
728x90