최대 1 분 소요

문제

3키로그램 봉지와 5키로그램 봉지로 최소의 봉지에 담아서 배달할 때, 최소의 봉지 수는?

내 최애 문제! 간단해 보이지만 처음에 이 문제를 봤을 때 어떻게 풀어야 되는지 굉장히 고민을 많이 했었다,,,

풀이

#include <iostream>

int main()
{
    int n;
    std::cin >> n;
    int cnt = 0;

    while (true)
    {
        if (n % 5 == 0)
        {
            cnt += n / 5;
            n = 0;
            break;
        }
        n -= 3;
        cnt++;

        if (n < 0)
            break;
    }

    if (n == 0)
    {
        std::cout << cnt << std::endl;
    }
    else
    {
        std::cout << "-1" << std::endl;
    }
}

댓글남기기