Cod sursa(job #3282137)

Utilizator ireallydontcareidontcare ireallydontcare Data 4 martie 2025 17:26:28
Problema Grupuri Scor 0
Compilator cpp-64 Status done
Runda team_building_oni_10 Marime 0.81 kb
#include <iostream>
#include <fstream>
#include <vector>

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

#define ll long long

ll N, K, suma;
vector<ll> animale;

int check(ll x) {
    ll sum = 0;
    for (int i = 1; i <= N; i++) {
        sum += min(x, animale[i]);
    }
    return sum >= K * x; 
}

int cb(int n, int k) {
    ll poz = 0;
    ll dr = suma;
    
    for (int step = 1 << 30; step > 0; step >>= 1) {
        if (poz + step <= dr && check(poz + step)) {
            poz += step;
        }
    }
    
    return poz; 
}
int main() {
    fin >> K >> N;
    animale.resize(N + 1); 
    
    for (int i = 1; i <= N; ++i) {
        fin >> animale[i];
        suma += animale[i];
    }


    fout << cb(N, K) + 1;
}
/*

        AGAGHJHAHAHAHAHAHAHAHH AM CITIT PANA LA K CE AM IN CAP

*/