Las fichas del atril
- O(n²) · Muy difícil
- Plan completo
- Python
- JavaScript
- ciclos
- listas
- textos
Enunciado
Queda medio minuto en el reloj de arena. Keoni mira las fichas de su atril y repasa las palabras que se sabe: antes de mover quiere contar cuántas podría poner en el tablero con lo que tiene.
Escribe una función que reciba fichas, un texto de letras minúsculas con una letra por ficha, y palabras, una lista de textos en minúsculas (los dos pueden venir vacíos). Una palabra se puede armar si ninguna de sus letras aparece en ella más veces que en fichas, porque cada ficha se usa una sola vez. Cada palabra se revisa sola, con el atril completo: las fichas no se gastan de una palabra a otra. La palabra vacía siempre se puede armar, y si una palabra viene repetida en la lista, cuenta cada vez.
Regresa, como entero, cuántas palabras de la lista se pueden armar.
Con "gaakll" y ["gak", "lll", "kala", "aag"]: "gak" pide una g, una a y una k, y las hay; "kala" pide dos a, una k y una l, y también alcanzan; "aag" pide dos a y una g, y alcanzan; "lll" pide tres l y solo hay dos. Se pueden armar tres, así que regresa 3.
Ejemplos
El ejemplo
"gaakll", ["gak", "lll", "kala", "aag"] → 3
Justo las fichas que pide
"aab", ["aab", "aaab", "baa"] → 2
Una palabra repetida cuenta dos veces
"casa", ["saca", "saca", "caza"] → 2
Atril vacío
"", ["", "a"] → 1
No se sabe ninguna palabra
"abc", [] → 0
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def cuantas_armo(fichas, palabras):
passJavaScript
function cuantasArmo(fichas, palabras) {
}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 justas del torneocomparaciones · ciclos · listas
- Las muestras en las cápsulascomparaciones · ciclos · listas
- 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