Juan y la Búsqueda Binaria


Submit solution

Points: 10
Time limit: 1.0s
Memory limit: 256M

Author:
Problem type

Descripción

Juan está aprendiendo a resolver problemas de búsqueda binaria. Durante sus sesiones de estudio cuenta con \( n \) libros, donde el libro \(i\) contiene \(a[i]\) problemas.

Como Juan es un joven muy ocupado, solo dispone de (h) horas en total para estudiar. En cada hora, Juan elige un libro y resuelve \(K\) problemas de él. Si el libro tiene menos de \(K\) problemas, los resuelve todos y descansa el resto de la hora.

Juan quiere minimizar la cantidad \(K\) de problemas que necesita resolver por hora para poder terminar todos los libros dentro de \(h\) horas.

Tu tarea es encontrar el valor mínimo de \(K\) tal que Juan pueda resolver todos los problemas en como máximo \(h\) horas.

Entrada

  • Un entero \(n\) que representa la cantidad de libros disponibles.
  • Un entero \(h\) que representa la cantidad total de horas disponibles que tiene Juan para estudiar.
  • Un arreglo \(a\) de \(n\) elementos, donde \(a[i]\) representa la cantidad de problemas del libro \(i\).

Salida

Un número \(K\) que representa la mínima cantidad de problemas que Juan debe resolver por hora.

Ejemplos

ENTRADA

4
8
3 6 7 11

SALIDA

4

Explicación

Si Juan resuelve 4 problemas por hora se puede observar el siguiente comportamiento:

  • El Libro 1 que tiene 3 problemas se puede resolver en una hora.
  • El Libro 2 que tiene 6 problemas se puede resolver en dos horas. En la primera hora se resuelven 4 problemas y en la segunda hora se resuelven los dos restantes.
  • El Libro 3 que tiene 7 problemas se puede resolver en dos horas.
  • El Libro 4 que tiene 11 problemas se puede resolver en tres horas.

\[ 1 + 2 + 2 + 3 = 8 \]

Por lo tanto, se puede asegurar que la mínima cantidad de problemas a resolver por hora es de 4.


ENTRADA

5
5
30 11 23 4 20

SALIDA

30

Límites

\( 1 \leq n \leq 10^4 \)

\( 1 \leq h, a[i] \leq 10^9 \)


Comments

There are no comments at the moment.