Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- iata = {"Campina Grande": "CPV",
- "Recife": "REC",
- "Salvador": "SSA",
- "Brasilia": "BSB",
- "Sao Paulo": "GRU",
- "Rio de Janeiro": "GIG"}
- voos = {"CPV": ["REC", "SSA"],
- "REC": ["CPV", "BSB", "GRU", "GIG"],
- "SSA": ["REC", "GRU", "GIG"],
- "BSB": ["CPV", "GIG", "GRU"],
- "GRU": ["GIG", "BSB"],
- "GIG": ["GRU", "REC"]}
- def eh_roteiro(iata, voos, rota):
- lista_rota = rota.split('/')
- for i in range(len(lista_rota) - 1):
- saida = iata[lista_rota[i]]
- destino = lista_rota[i + 1]
- if iata[destino] not in voos[saida]:
- print "deu aguia em", rota
- return False
- else:
- print "ok", i
- return True
- eh_roteiro(iata, voos, "Campina Grande/Recife/Rio de Janeiro")
- eh_roteiro(iata, voos, "Sao Paulo/Rio de Janeiro/Recife/Brasilia")
- eh_roteiro(iata, voos, "Recife/Rio de Janeiro/Salvador/Recife")
- assert eh_roteiro(iata, voos, "Campina Grande/Recife/Rio de Janeiro")
- assert eh_roteiro(iata, voos, "Sao Paulo/Rio de Janeiro/Recife/Brasilia")
- assert not eh_roteiro(iata, voos, "Recife/Rio de Janeiro/Salvador/Recife")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement