Pagini recente » Cod sursa (job #2573166) | Cod sursa (job #2393667) | Cod sursa (job #3143024) | Cod sursa (job #2306301) | Cod sursa (job #2328108)
#include <cstdio>
int a[100001];
int main (){
freopen ("grupuri.in","r",stdin);
freopen ("grupuri.out","w",stdout);
long long s=0,l1,l2,m,nr;
int k,n,i;
scanf ("%d %d",&k,&n);
for (i=1;i<=n;i++){
scanf ("%d",&a[i]);
s=s+a[i];
}
l1=a[i];
l2=s/k;
while (l1<=l2){
m=(l1+l2)/2;
s=0;
for (i=1;i<=n;i++)
if (a[i]>m)
s+=m;
else
s+=a[i];
if (s>=m*k){
nr=m;
l1=m+1;
}
else
l2=m-1;
}
printf ("%d",nr);
return 0;
}