2839번: 설탕 배달
상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그
www.acmicpc.net
문제
소스코드
문제풀이
문제에서 요구하는 최소의 봉지 수를 구할 수 있는 방법은
5킬로그램 봉지의 수를 최대로 한채
나머지인 n%5 에 대해
3킬로그램 봉지를 고려하는 것에 초점을 잡았다.
즉, 입력한 n에 대해 5로 나눈 나머지 a는
초기상태가 최소값이다.
<조건문>
a%3 == 0이면 최소 봉지 수 조건을 만족하므로
while 반복문을 탈출한다.
만약 a %3 값이 0이면,
자루수(ans)을 구하기 위해 반복문을 탈출 한다.
만약 a %3 값이 0이 아니면, 5킬로그램 봉지에 배분한 자루 수를 줄이고
3킬로그램 봉지에 배분한 자루 수를 늘리고 위 조건을 다시 반복한다.
반복문을 탈출 후,
n은 5킬로그램에 해당하는 자리 수 &
a는 3킬로그램에 해당하는 자리 수로 고려하고 ans 값을 구한다.
n이 0보다 작으면 주어진 n에 대해 ans 값을 못구했다는 것을 나타내고
이는 ans = -1로 표현했다.
'Koala - 9기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/python] 10886번: 0 = not cute / 1 = cute (0) | 2023.01.08 |
---|---|
[백준/C++] 3460 이진수 (0) | 2023.01.08 |
[백준/C] 20540 연길이의 이상형 (0) | 2023.01.08 |
[백준/python] 11721 열 개씩 끊어 출력하기 (0) | 2023.01.08 |
[백준/python] 11021 A+B -7 (0) | 2023.01.08 |