문제
풀이
이 문제는 N 을 5와 3을 순서대로 나누었을때 나올 수 있는 최소값을 구하는 문제입니다.
N kg의 설탕이 있을 때 5kg와 3kg 봉지에 담았을 때 최소 몇봉지가 나오는지를 구하면 되는 문제로 어렵지 않게 풀이를 진행할 수 있습니다. 잘 생각해보면 3kg 봉지에 설탕을 먼저 담는 것 보다 5kg 봉지에 담을 수 있는 만큼 담은 다음, 남은 양을 3kg에 담는 것이 더 적은 수의 봉지를 사용하여 담을 수 있는 방법입니다. 즉 5로 나눌 수 있는 만큼 나누어보고, 안되면 3으로 나누어지는지를 확인하면 됩니다. 코드는 아래와 같습니다.
소스코드
#include<iostream>
using namespace std;
int main(){
int n,cnt=0;
cin >>n;
cnt=n/5;
if (n%5 !=0)
{
while (cnt>=0)
{
if ((n-5*cnt)%3==0) {
cnt+=(n-5*cnt)/3;
break;
} cnt --;
}
}
cout << cnt;
}
'Algorithm > Python, C++' 카테고리의 다른 글
백준 10870_피보나치 수 5 [C++] (0) | 2022.06.26 |
---|---|
백준 1011_Fly to the Alpha Centauri [C++] (0) | 2022.06.25 |
백준 2775_부녀회장이 될테야[C++] (0) | 2022.02.20 |
백준 10250_ACM 호텔[C++] (0) | 2022.01.25 |
백준 1193_분수찾기[C++] (0) | 2022.01.25 |
댓글