Cod sursa(job #3178797)

Utilizator LucasSecaraSecara Lucas Victor LucasSecara Data 2 decembrie 2023 15:02:56
Problema Grupuri Scor 88
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream fin("grupuri.in");
ofstream fout("grupuri.out");
long long v[100001];
int main()
{
    long long n,m,sum=0,mij,s,aux;
    fin>>n>>m;
    for(int i=1; i<=m; i++)
    {
        fin>>v[i];
    }
    for(int i=1; i<=m; i++)
    {
        sum=sum+v[i];
    }
    int st=1, dr=sum;
    aux=1;
    while(st <= dr)
    {
        mij= (st + dr) / 2;
        s=0;
        for(int i=1; i<=m; i++)
        {
            s+=min(v[i],mij);
        }
        if(s>=n*mij)
        {
            st = mij + 1;
            aux = mij;
        }
        else dr= mij - 1;
    }
    fout<<aux;
    return 0;
}