문제
https://www.acmicpc.net/problem/2839
풀이
그리디로 풀었다. 5kg으로 먼저 나누어 준후, 3kg으로 나누어지는지 판단하다.
나머지가 남는다면 5kg 봉지를 하나씩 빼가면서 다시 탐색한다.
코드
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
int N;
int main() {
cin >> N;
int a = N / 5;
int b = 0;
int cnt = 0;
while (1) {
if (a < 0) {
cnt = -1;
break;
}
else {
if ((N - (5 * a)) % 3 == 0) {
b = (N - (5 * a)) / 3;
break;
}
a--;
}
}
cout << a + b;
return 0;
}
'알고리즘 공부 > 백준' 카테고리의 다른 글
[백준] 나이순 정렬 (10814/C++) (0) | 2022.01.22 |
---|---|
[백준] 균형잡힌 세상 (4949/C++) (0) | 2022.01.22 |
[백준] 나무 자르기 (2805/C++) (0) | 2022.01.16 |
[백준] 블랙잭 (2798 / C++) (0) | 2022.01.16 |
[백준] 영화감독 숌 (1436 / C++) (0) | 2022.01.13 |