5_BAEKJOON
5 BAEKJOON) 2839 : 설탕 배달
Mi:sAng
2022. 11. 7. 22:01
*핵심 : 이 문제에서 핵심은 5kg 봉지가 많을 수록 좋다는 것이다.
따라서 우선, 가능한 최대의 5kg 봉지를 구하고 남은 설탕이 3kg봉지로 담을 수 있는 지 보는 것이 중요하다. 이때 3kg 봉지로 담을 수 있다면, 바로 봉지의 수를 구할 수 있다. 단, 3kg 봉지로 담을 수 없다면 앞서 구한 가능한 최대의 5kg 봉지의 수를 1씩 줄여가며 3kg봉지로 담을 수 있는 지를 체크한다. 이 반복 과정은 5kg 봉투에 담고 남은 설탕이 3kg 봉투로 담을 수 있을 때나, 5kg 봉투가 -1일때 종료된다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
int m = 0;
scanf(" %d", &m);
int max5 = m/5;
int max3 = 0;
while (1) {
if ((m - 5*max5) % 3 == 0) {
max3 = (m - 5*max5) / 3;
printf("%d", max3 + max5);
break;
}
else {
max5--;
if (max5 == -1) {
printf("%d", -1);
break;
}
}
}
return 0;
}