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;
}