[백준] 설탕 배달 (2839번) - 그리디
🔗 문제 링크
https://www.acmicpc.net/problem/2839
💻 코드
N = int(input())
# 5킬로그램 봉지를 최대로 가질 수 있는 경우
cnt_5_temp = N // 5
data = N
result = 0
flag = False # N킬로그램을 만들 수 있는지 확인하는 변수
# 5킬로그램 봉지를 처음에는 가질 수 있는 최대로 갖고,
# N킬로그램을 만들 수 없다면 그 수를 하나씩 줄여가며 결과를 찾는다.
for cnt_5 in range(cnt_5_temp, -1, -1):
data -= 5 * cnt_5
# 5킬로그램 봉지를 가지고 남은 무게를 3킬로그램으로 채울 수 있다면 결과 return
if data % 3 == 0 :
cnt_3 = data // 3
result = cnt_5 + cnt_3
flag = True
break
data = N
if flag == False:
print(-1)
else:
print(result)
Author And Source
이 문제에 관하여([백준] 설탕 배달 (2839번) - 그리디), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@xxwb__/백준-설탕-배달-2839번
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
N = int(input())
# 5킬로그램 봉지를 최대로 가질 수 있는 경우
cnt_5_temp = N // 5
data = N
result = 0
flag = False # N킬로그램을 만들 수 있는지 확인하는 변수
# 5킬로그램 봉지를 처음에는 가질 수 있는 최대로 갖고,
# N킬로그램을 만들 수 없다면 그 수를 하나씩 줄여가며 결과를 찾는다.
for cnt_5 in range(cnt_5_temp, -1, -1):
data -= 5 * cnt_5
# 5킬로그램 봉지를 가지고 남은 무게를 3킬로그램으로 채울 수 있다면 결과 return
if data % 3 == 0 :
cnt_3 = data // 3
result = cnt_5 + cnt_3
flag = True
break
data = N
if flag == False:
print(-1)
else:
print(result)
Author And Source
이 문제에 관하여([백준] 설탕 배달 (2839번) - 그리디), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@xxwb__/백준-설탕-배달-2839번저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)