Cod sursa(job #2733573)

Utilizator keluIon Ionel kelu Data 30 martie 2021 16:59:46
Problema Grupuri Scor 18
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <fstream>
#include <vector>
#include <queue>

using namespace std;

#define TEST 0

#if TEST
ifstream cin("test.in");
ofstream cout("test.out");
#else
ifstream cin("grupuri.in");
ofstream cout("grupuri.out");
#endif

priority_queue<int> pq;

int main()
{
    int k,n;
    cin>>k>>n;

    int total=0;
    for(int i=0;i<n;i++)
    {
        int a; cin>>a;
        pq.push(a);
    }

    vector<int> grup(k,0);

    int cnt=0;
    int err=0;
    while(!err)
    {
        for(int i=0;i<k;i++)
        {    
            grup[i]=pq.top();pq.pop();
            if (grup[i]==0)
            {
                err=1; break;
            }
        }
        if (!err)
        {
            for(int i=0;i<k;i++)
            {
                pq.push(grup[i]-1);
            }
            cnt++;
        }
    }

    cout<<cnt;
    
    return 0;
}