Cod sursa(job #1024141)

Utilizator leontinLeontin leontin Data 8 noiembrie 2013 12:05:27
Problema Grupuri Scor 62
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("grupuri.in");
ofstream g("grupuri.out");
long long n,k,v[1000],nr=0;
int verifica(long long x)
{
    int i,s=0;
    for(i=1;i<=n;i++)
    {
        if(v[i]>x)
        s=s+x;
        else
        s=s+v[i];
    }
    if(s<x*k)
    return 0;
    else
    {
        if(nr<x)
        nr=x;
        return 1;

    }

}
void binary(long long st,long long dr)
{
    if(st>dr)
    return ;
    long long med=(st+dr)/2;
    if(verifica(med))
     binary(med+1,dr);
    else
     binary (st,med-1);



}


int main()
{
    f>>k>>n;
    long long i,min,max;
    f>>v[1];
    min=max=v[1];
    for(i=2;i<=n;i++)
    f>>v[i];
binary(1,1000000);
g<<nr;
return 0;
}