Cod sursa(job #1074345)

Utilizator CatalinaRaduCatalina Elena Radu CatalinaRadu Data 7 ianuarie 2014 16:31:57
Problema Grupuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f ("grupuri.in");
ofstream g ("grupuri.out");

#define nmax 100000000000
#define maxn 100001

long long n,k,v[maxn],i;

int check (long long x)
{
    long long s=0;
    for (long i=0;i<x;i++)
         if(v[i]>x)
            s+=x;
         else
            s+=v[i];
     if(s<x*k)
        return 0;
     return 1;
}

int main()
{
    f>>k>>n;
    for (long i=0;i<n;i++)
        f>>v[i];
    long long step=1<<25,i;
    for (i=0;step;step/=2)
        if(i+step<nmax && check(i+step)==1)
          i+=step;
    g<<i<<'\n';
    f.close();
    g.close();
    return 0;
}