Cod sursa(job #3233601)

Utilizator Dia3141Costea Diana Stefania Dia3141 Data 3 iunie 2024 23:54:00
Problema Grupuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream>
using namespace std;
ifstream cin("grupuri.in");
ofstream cout("grupuri.out");
int n,k,v[100002];
long long s,sol;
bool verif(long long t){
    long long e=0;
    for(int i=1;i<=n;i++)
        if(v[i]<=t)
            e+=v[i];
        else
            e+=t;
    return (e>=t*k);
}
int main()
{
    cin>>k>>n;
    for(int i=1;i<=n;i++){
        cin>>v[i];
        s+=v[i];
    }
    long long st=0,dr=s/k;
    while(st<=dr){
        long long mid=(st+dr)/2;
        if(verif(mid))
            st=mid+1,sol=max(mid,sol);
        else
            dr=mid-1;
    }
    cout<<sol;
    return 0;
}