Pagini recente » Cod sursa (job #357866) | Cod sursa (job #235414) | Rating Vlad Hategan (vladcoolv) | Istoria paginii runda/the.first.infoarenaut/clasament | Cod sursa (job #1738129)
#include <fstream>
#define VAL 100005
#define INF 0x3f3f3f3f
using namespace std;
ifstream fin("grupuri.in");
ofstream fout("grupuri.out");
int N, K, i;
int v[VAL];
bool verifica(long long x)
{
long long nr=0;
for (i=1; i<=N; i++)
nr+=min(x, 1LL*v[i]);
return nr>=1LL*K*x;
}
long long cautbin()
{
long long be=1;
long long en=INF;
long long ans, mid;
while (be<=en)
{
mid=(be+en) / 2;
if (verifica(mid)==true)
{
ans=mid;
be=mid+1;
}
else
en=mid-1;
}
return ans;
}
int main()
{
fin >> K >> N;
for (i=1; i<=N; i++)
fin >> v[i];
fout << cautbin() << '\n';
fin.close();
fout.close();
return 0;
}