Koala - 11기/기초 알고리즘 스터디
[백준/Python3] 2839번: 설탕 배달
kky9525
2023. 7. 16. 21:55
문제: 2839번: 설탕 배달 (acmicpc.net)
코드
코드 설명
먼저, n킬로그램의 설탕 무게를 입력 받는다.
최대한 많은 수의 5킬로그램의 봉지를 만들고 나머지를 3킬로그램의 봉지로 만드는 것이 최소 개수를 만드는 방법이므로, while문을 통해 n을 5로 나누어서 나머지가 0이면 봉지의 개수를 n/5 값을 현재 봉지의 개수에서 추가를 하고 그 즉시 while문을 탈출해서 봉지의 개수를 출력하게 만들거나, 나머지가 0이 아닌 경우는 지속적으로 n에서 3을 빼주는 것을 반복하면서 봉지의 개수를 1씩 추가하고 n이 3이상일 때만 반복하게 만들어주었다.
while문을 탈출 후 n은 0, 1, 2의 수 중 하나를 가지게 되는데, n이 0이 아니면, 정확하게 봉지에 나누어서 담을 수 없으므로, -1을 출력해주고 n이 0인 경우는 while문을 통해 계산한 봉지의 개수를 출력하면 된다.