Pagini recente » Cod sursa (job #808824) | Cod sursa (job #1789796) | Cod sursa (job #527507) | Cod sursa (job #2659447) | Cod sursa (job #462251)
Cod sursa(job #462251)
#include <stdio.h>
#define DIM 1<<17
int A[DIM];
int N, K;
long long p, u, k, X;
int complt (){
long long k = 0;
for (int i=1; i<=N; i++){
if (A[i] <= X) k += A[i];
else k += X;
if (k >= K * X) return 1;
}
return 0;
}
int main (){
freopen ("grupuri.in" ,"r", stdin);
freopen ("grupuri.out" ,"w", stdout);
scanf ("%d %d", &K, &N);
for (int i=1; i<=N; ++i){
scanf ("%d", &A[i]);
k += A[i];
}
p = 1, u = k/K;
while (p <= u){
X = p + (u - p) / 2;
if (complt ())
p = X + 1;
else
u = X - 1;
}
printf ("%d", u);
return 0;
}