Cod sursa(job #2550890)

Utilizator robertrRotaru Stefan Robert robertr Data 19 februarie 2020 11:11:35
Problema Grupuri Scor 2
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <fstream>
using namespace std;
ifstream f("grupuri.in");
ofstream g("grupuri.out");
int k,n,v[100005],sum;
inline bool valid(int gr)
{
    int s=0;
    for(int i=1;i<=n;++i)
        s+=min(v[i],gr);
    return s<=sum*k;
}
int caut_bin()
{
    int st=1,dr=sum,mij,sol=0;
    while(st<=dr)
    {
        mij=(st+dr)>>1;
        if(valid(mij)) st=mij+1,sol=mij;
        else dr=mij-1;
    }
    return sol;
}
int main()
{
    f>>k>>n;
    for(int i=1;i<=n;++i)
        f>>v[i],sum+=v[i];
    sum/=k;
    g<<caut_bin()<<'\n';
    return 0;
}