Cod sursa(job #2353181)

Utilizator maria15Maria Dinca maria15 Data 23 februarie 2019 22:46:50
Problema Grupuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>

using namespace std;

ifstream fin("grupuri.in");
ofstream fout("grupuri.out");

long long n, st, dr, mid, a[100001], k, i;
long long s;

int verif(int grup){
    long long sol = 0;
    for(int i = 1;i<=n;i++)
        if(a[i] < grup)
            sol += a[i];
        else
            sol += grup;
    if(sol >= k*grup)
        return 1;
    return 0;
}

int main(){
    fin>>k>>n;
    for(i=1;i<=n;i++){
        fin>>a[i];
        s += a[i];
    }
    st = 1;
    dr = s/k;
    while(st <= dr){
        mid = (st+dr)/2;
        if(verif(mid))
            st = mid+1;
        else
            dr = mid-1;
    }
    fout<<dr;
    return 0;
}