Búsqueda ciega

Tiempo límite 2 s
Memoria límite 256 MB
Casos de prueba 37
Dificultad Medio Algoritmos
Mostrar (1) Programación dinámica
Enviar solución

Puntos: 10

Tipos de problema
Lenguajes permitidos
C, C++, Java, Python, Rust

Autor: Vicente Opazo

Tiempo límite: 2 segundos

Memoria límite: 256 megabytes

Davo ha perdido la vista y para recuperarla necesita encontrar sus \(k\) pastillas especiales contra la ceguera. Tiene un pastillero con \(n\) compartimentos numerados del \(1\) al \(n\). En exactamente \(k\) de estos compartimentos hay una pastilla contra la ceguera y en los demás hay pastillas comunes que no le hacen efecto.

Las pastillas contra la ceguera tienen un color distinto, por lo que una persona que puede ver sabría diferenciarlas fácilmente. Sin embargo, al tacto todas las pastillas son idénticas, por lo que Davo, que está ciego, no puede saber dónde están. Su amigo Lautaro sí puede verlas, pero como es juguetón, decide ayudarlo de una forma peculiar.

Lautaro le permite hacer consultas del siguiente tipo:

  • Davo elige un compartimento \(x\) (\(1 \le x\le n\)).
  • Lautaro le responde con un número: cuántas pastillas contra la ceguera hay en los compartimentos con índice menor que \(x\) (es decir, en los compartimentos \(1, 2, \ldots , x-1\)).

Con suficiente información, Davo siempre puede deducir exactamente qué compartimentos contienen las \(k\) pastillas especiales. Sin embargo, como no quiere seguirle el juego a Lautaro por mucho tiempo, quiere encontrar una estrategia óptima para hacer las consultas necesarias.

Dado \(n\) (el número de compartimentos) y \(k\) (el número de pastillas especiales), determina el número mínimo de consultas que Davo necesita para garantizar encontrar las \(k\) pastillas en el peor caso, asumiendo que sigue la mejor estrategia posible.

Entrada

La entrada contiene dos enteros \(n\) y \(k\) (\(1 \le k\le n\le 50\)).

Salida

Imprime un entero: el número mínimo de consultas necesarias en el peor caso.

Ejemplos

Entrada 1

8 1

Salida 1

3

Entrada 2

5 2

Salida 2

4

Entrada 3

50 50

Salida 3

0

Comentarios

No hay comentarios por el momento.