Pagini recente » Cod sursa (job #1071893) | Cod sursa (job #1677457) | Cod sursa (job #417199) | Cod sursa (job #761098) | Cod sursa (job #992462)
Cod sursa(job #992462)
#include<cstdio>
#define Close fclose(in); fclose(out)
using namespace std;
const int ctr = 1000010;
int K,n,v[ctr];
inline int min (long long a, long long b){
return a < b ? a : b ;
}
bool verif(long long x){
long long S = 0;
for ( int i = 1; i < n+1; ++i )
S += min( x, 1LL * v[i]);
return S >= K * x * 1LL ? true : false ;
}
int bin_search (){
long long sol=0, pow = 1LL*1<<60;
while (pow){
if(verif(pow+sol)) sol+= pow;
pow>>=1;
}
return sol;
}
int main(){
FILE *in=fopen("grupuri.in" ,"r");
FILE *out=fopen("grupuri.out","w");
fscanf(in, "%d%d" ,&K ,&n);
for(int i = 1 ; i < n + 1 ; ++i) fscanf(in , "%d" ,&v[i]);
fprintf(out,"%d\n",bin_search());
Close;
return 0;
}