Las escalas del viaje
- O(n) · Media
- Plan completo
- Python
- JavaScript
- textos
- listas
- booleanos
Enunciado
Sofía compró un viaje por Sudamérica con varias escalas, y el boleto trae cada tramo con el código de la ciudad de salida y el de la de llegada. Antes de imprimirlo, la agencia revisa que ningún tramo salga de una ciudad donde ella no está.
Escribe una función que reciba la lista de tramos, en orden, y regrese verdadero si cada tramo sale de la ciudad donde llegó el anterior, y falso si alguno no. Cada tramo es un texto de la forma "MEX-BOG": tres letras mayúsculas de salida, un guion y tres letras de llegada, sin espacios. ["MEX-BOG", "BOG-LIM", "LIM-SCL"] está encadenado: verdadero. En ["MEX-BOG", "LIM-SCL"] llega a BOG y sale de LIM: falso.
Volver a una ciudad donde ya estuvo se vale. Una lista vacía o de un solo tramo está encadenada.
Ejemplos
El del ejemplo
["MEX-BOG", "BOG-LIM", "LIM-SCL"] → true
Llegan a la misma ciudad
["MEX-BOG", "LIM-BOG"] → false
Un solo tramo
["GDL-CUN"] → true
Ida y vuelta
["MEX-BOG", "BOG-MEX"] → true
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def encadenado(tramos):
passJavaScript
function encadenado(tramos) {
}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.