반응형
Approach
출처: https://www.acmicpc.net/problem/2839
문제 요구사항을 토대로 쉽게 구현할 수 있는 문제이다.
5개와 3개짜리를 담을 수 있는 봉지가 있다.
봉지 개수를 최소화해야 하기 때문에
하나의 봉지에 많이 담을 수 있도록 5개 봉지 물량을 많이 확보해야 한다.
5개 봉지를 최대한으로 했을 때, 3개 짜리 봉지를 개수 조절해
모든 사탕을 담을 수 있는지 반복문으로 확인
#include <iostream>
using namespace std;
int N;
int main()
{
// freopen("input.txt", "r", stdin);
cin >> N;
// 봉지를 최소화 할 수 있게 5개 봉지를 최대한 많이 확보
for (int i = N / 5; i >= 0; i--)
{
int j = 0;
while (1)
{
int total = (5 * i) + (3 * j);
if (total == N) // 사탕 개수가 맞춰진 경우
{
cout << (i + j) << endl; // 봉지 개수
return 0;
}
else if (total > N)
break;
else
j++; // 3개 담는 봉지 개수++
}
}
cout << "-1" << endl;
}
반응형
'PS 문제 풀이 > Baekjoon' 카테고리의 다른 글
[BOJ] 백준 2864 5와 6의 차이 (0) | 2022.01.23 |
---|---|
[BOJ] 백준 2864 5와 6의 차이 (0) | 2022.01.23 |
[BOJ] 백준 2789 유학금지 (0) | 2022.01.20 |
[BOJ] 백준 2775 부녀회장이 될테야 (0) | 2022.01.17 |
[BOJ] 백준 2740 행렬 곱셈 (0) | 2022.01.15 |
댓글