Pagini recente » Cod sursa (job #179708) | Cod sursa (job #3220009) | Cod sursa (job #1801409) | Cod sursa (job #1999492) | Cod sursa (job #1344297)
#include <stdio.h>
#define MAXN 100000
int n, k, v[MAXN];
inline int min2(int a, int b){
if(a<b){
return a;
}
return b;
}
inline int ok(int p){
int i;
long long sum=0;
for(i=0; i<n; i++){
sum+=min2(p, v[i]);
}
return (sum>=(p*(long long)k));
}
int main(){
int i, rez, pas;
FILE *fin, *fout;
fin=fopen("grupuri.in", "r");
fout=fopen("grupuri.out", "w");
fscanf(fin, "%d%d", &k, &n);
for(i=0; i<n; i++){
fscanf(fin, "%d", &v[i]);
}
rez=0;
for(pas=1<<19; pas!=0; pas>>=1){
if(ok(rez+pas)==1){
rez+=pas;
}
}
fprintf(fout, "%d\n", rez);
fclose(fin);
fclose(fout);
return 0;
}