Pagini recente » Cod sursa (job #1504177) | Cod sursa (job #2751857) | Cod sursa (job #1595537) | Cod sursa (job #1635184) | Cod sursa (job #1310294)
#include<fstream>
#include<algorithm>
#define ll long long
#define max(a,b) (a>b) ? a : b
using namespace std;
ifstream cin("grupuri.in");
ofstream cout("grupuri.out");
const int N=100010;
long long n,i,k,a[N];
long long sum,l,r,mij,sol;;
int f(ll x)
{
long long s=0;
for (int i=1;i<=n;i++)s+=min(a[i],x);
return k*x<=s;
}
int main()
{
cin>>k>>n;
for (i=1;i<=n;i++)cin>>a[i],sum+=a[i];
l=0;r=sum/k;
while (l<=r)
{
mij=(l+r)/2;
if (f(mij)) l=mij+1;
else r=mij-1;
}
cout<<r;
return 0;
}