Cod sursa(job #3241279)

Utilizator razvanmrt_06Mariuta Razvan razvanmrt_06 Data 28 august 2024 15:29:11
Problema Grupuri Scor 2
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <iostream>
#include <fstream>

using namespace std;

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

const int Nmax = 100000;
int n, k, a[Nmax+5];

void read(int &n, int &k, int a[]){
    fin >> k >> n;
    for(int i = 1; i <= n; i++){
        fin >> a[i];
    }
}

bool valid(long long nr){
    long long sum = 0;
    for(int i = 1; i <= n; i++){
        sum += min(a[i], k);
    }
    if(sum >= nr * k){
        return true;
    }
    return false;
}

int main()
{
    read(n, k, a);
    long long st = 1;
    long long dr = 100000000005;
    long long sol = 0;
    while(st <= dr){
        long long m = (st + dr) / 2;
        if(valid(m)){
            sol = m;
            st = m + 1;
        }
        else{
            dr = m - 1;
        }
    }
    fout << sol;

    return 0;
}