[Python] 2839. 설탕 배달

KT SON·2023년 4월 4일
0

[BOJ] 브루트포스

목록 보기
6/7

문제)

https://www.acmicpc.net/problem/2839

Code)

# 2839. 설탕 배달
n = int(input())

cnt =0
while n>=0:
    if n % 5 == 0: # 5의 배수이면 (최소 봉지 수를 구하기 위한 최우선 조건)
        cnt += (n // 5) # 몫이 봉지의 수가 됨
        print(cnt) 
        break
    # 5의 배수 아니면
    n -= 3    # 3kg 짜리 하나 빼서
    cnt += 1  # 봉지 하나 추가시켜주세요
else:         # 3과 5로 만들수 없는 조합이라면
    print(-1) # -1 출력할게요

후기

최소한의 봉지 사용을 해야하기 때문에 5kg 봉지를 쓰는 것이 가장 중요하다.
3과 5로 만들수 있는 조합이 없는 경우는 while ~ else문에 의해 -1를 출력
문제 접근 시, 이렇게 풀면 되겠다!! 하면서 풀었는데 잘 안 풀리면 다른 방식도 바로바로 생각해보자.
너무 한 가지 풀이 방법에 꽂혀서 얽매이지 말자!! (얽매이는 순간 문제가 쉬워도 시간 소비가 큼..)

profile
속도보다는 방향이다.

0개의 댓글