Pagini recente » Cod sursa (job #141354) | Cod sursa (job #2162020) | Cod sursa (job #740254) | Cod sursa (job #2896581) | Cod sursa (job #1501276)
#include <iostream>
#include<cstdio>
using namespace std;
int v[100001];
int main()
{
freopen("grupuri.in", "r", stdin);
freopen("grupuri.out", "w", stdout);
long long n, k, i, l1, l2, mij, s=0, rasp=0;
scanf("%I64d%I64d", &k, &n);
for(i=1;i<=n;i++){
scanf("%d", &v[i]);
s+=v[i];
}
l1=0;l2=s;
while(l1<=l2)
{
mij=(l1+l2)/2;
int sum=0;
for(i=1;i<=n;i++){
if(v[i]<=mij)
sum+=v[i];
else sum+=mij;
}
if(sum<mij*k)
l2=mij-1;
else{
rasp=mij;
l1=mij+1;
}
}
printf("%I64d", rasp);
return 0;
}