Cod sursa(job #1511764)

Utilizator andreiskiorAndrei Cristian Nastase andreiskior Data 27 octombrie 2015 08:59:21
Problema Grupuri Scor 74
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <fstream>

using namespace std;

int main()
{
    ifstream fin("grupuri.in");
    ofstream fout("grupuri.out");
    int mij,s[100000],i,k,n,sm=0,sc,dr=0,st=1,sol=0;
    fin>>k>>n;
    for(i=0;i<n;++i){
        fin>>s[i];
        sm+=s[i];
    }
    dr=sm/k;
    while(st<=dr)
    {
        mij=(dr+st)/2;
        sc=0;
        for(i=0;i<n;++i)
            if(s[i]>=mij) sc+=mij;
            else sc+=s[i];
        if(sc/k>=mij) {sol=mij;st=mij+1;}
        else dr=mij-1;
    }
    fout<<sol;
    return 0;
}