Las muestras en las cápsulas
- O(n²) · Muy difícil
- Plan completo
- Python
- JavaScript
- comparaciones
- ciclos
- listas
Enunciado
Mariam Haddad, ingeniera de misión, prepara el regreso de las rocas de Marte. El rover las guarda en cápsulas con el mismo límite de peso y sigue una regla fija: cada roca va a la primera cápsula abierta donde todavía cabe, y si no cabe en ninguna, el rover abre una nueva.
Escribe una función que reciba tope, el peso máximo de una cápsula (entero mayor que 0), y pesos, los pesos de las rocas en el orden en que se recogen: enteros de 1 a tope, y la lista puede venir vacía. Cada roca entra en la primera cápsula, en el orden en que se abrieron, donde su carga más la roca no pase de tope (llegar justo sí vale); si no cabe en ninguna, se abre una cápsula nueva al final. Una roca guardada ya no se mueve. Regresa cuántas cápsulas se abrieron.
Con tope 10 y [6, 5, 4, 3, 7, 2]: el 6 abre la 1, el 5 abre la 2, el 4 llena la 1, el 3 va a la 2 (lleva 8), el 7 abre la 3 y el 2 cabe justo en la 2; regresa 3. Sin rocas, regresa 0.
Ejemplos
El ejemplo
10, [6, 5, 4, 3, 7, 2] → 3
Sin rocas
10, [] → 0
Una roca que llena su cápsula
5, [5] → 1
Llegar justo sí vale
10, [5, 5, 5, 5] → 2
Una roca vuelve a la primera cápsula
10, [6, 6, 4, 4] → 2
Cada roca llena una cápsula
3, [3, 3, 3] → 3
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def capsulas(tope, pesos):
passJavaScript
function capsulas(tope, pesos) {
}Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.
Más retos de O(n²)
- Las partículas que chocanlistas · ciclos · comparaciones
- Las pistas del cumpleañosciclos · listas · índices
- Lluvia entre las rocaslistas · ciclos · comparaciones
- Los avisperos del viverorejillas · textos · ciclos
- Los caballos del kancomparaciones · ciclos · listas
- Los caminos por la obrarecursión · rejillas · diccionarios