Pagini recente » Cod sursa (job #532345) | Cod sursa (job #8515) | Cod sursa (job #3196509) | Cod sursa (job #2430238) | Cod sursa (job #1552363)
#include <fstream>
using namespace std;
ifstream in("grupuri.in");
ofstream out("grupuri.out");
const int nmax = 100006;
int k, n, x, a[nmax];
long long mj, st, dr;
inline bool OK(long long x)
{
long long nr=0LL;
for(int i = 1; i<=n; i++)
if(a[i]<x)
nr += a[i];
else nr += x;
if(nr/k>=x)
return 1;
return 0;
}
int main()
{
int player_unu=0;
in>>k>>n;
long long sum = 0;
for(int i = 1; i<=n; i++)
{
in>>a[i], sum += a[i];
}
st = 1;
dr = sum;
while(st<=dr)
{
mj = (st + dr) / 2;
if(OK(mj))
st = mj + 1;
else
dr = mj - 1;
}
out<<dr<<'\n';
return player_unu;
}