Cod sursa(job #1024272)

Utilizator andreea_zahariaAndreea Zaharia andreea_zaharia Data 8 noiembrie 2013 15:12:44
Problema Grupuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <cstdio>

int v[100001];
int k, n;

int valid(int x)
{
    int i;
    long long s = 0;

    for(i=1; i<=n; i++)
        s += (v[i] < x)? v[i]:x;

    if(k*x <= s)
        return 0;

    return  1;
}

int main ()
{
    freopen("grupuri.in", "r", stdin);
    freopen("grupuri.out", "w", stdout);

    scanf("%d%d", &k, &n);

    for(int i=1; i<=n; i++)
        scanf("%d", &v[i]);

    int i, pas = 1<<30;

    for(i = 0; pas; pas >>= 1)
        if(valid(i+pas) == 0)
            i += pas;

    printf("%d\n", i);

    return 0;
}