Cod sursa(job #3175228)

Utilizator RaresStanStan Rares RaresStan Data 25 noiembrie 2023 14:19:32
Problema Grupuri Scor 74
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>

using namespace std;
int v[100005];
int n, k;

bool verif(int x) {
    int s = 0;
    for (int i = 1; i <= n; i++)
        s += min(x, v[i]);
    if (s >= x * k)
        return true;
    else
        return false;
}

int main() {
    ifstream cin("grupuri.in");
    ofstream cout("grupuri.out");
    int s = 0;
    cin >> k >> n;
    for (int i = 1; i <= n; i++) {
        cin >> v[i];
        s += v[i];
    }
    int st = 0, dr = s / k, r = -1;
    while (st <= dr) {
        int mid = (st + dr) / 2;
        if (verif(mid)) {
            r = mid;
            st = mid + 1;
        } else
            dr = mid - 1;
    }
    cout << r;
    return 0;
}