[boj](b 1)2839送糖


グリディ

質問する


リンク

に答える


正確に3、5 kgの封筒(正確にN kgを作る)に分けますので、5に分けて、落ちるまで3で引いて数えます.
グリーンディアルゴリズム問題

コード#コード#

#include <iostream>
#include <algorithm>
#include <string>

using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    int N, sum = 0;
    cin >> N;

    while(1){
        if(N%5 == 0){
            sum += N/5;
            break;
        }

        N-=3;
        sum++;

        if(N<0){
            sum = -1;
            break;
        }

        if(N==0){
            break; 
        }
    }

    cout << sum << "\n";

    return 0;
}