Pagini recente » Cod sursa (job #2241008) | Profil sonic-ana | Rating Matei Lache (MateiMirela) | Cod sursa (job #907503) | Cod sursa (job #1280825)
#include<cstdio>
using namespace std;
#define nmax 100002
#define lim 1000000000
FILE *f=fopen ("grupuri.in","r");
FILE *g=fopen ("grupuri.out","w");
int n,k,v[nmax];
bool sol (int t) {
long long s=0;
for (int i=1;i<=n;++i){
if (v[i]>t) s+=1LL*t;
else s+=1LL*v[i];
if (s>=1LL*t*k) return 1;
}
return 0;
}
int bsearch (int st,int dr){
int mid,s;
while (st<=dr){
mid=(st+dr)>>1;
if(sol(mid)){
s=mid;
st=mid+1;
}
else dr=mid-1;
}
return s;
}
int main() {
fscanf (f,"%d%d",&k,&n);
for (int i=1;i<=n;++i) fscanf (f,"%d",&v[i]);
fprintf (g,"%d",bsearch(0,lim));
return 0;
}