Created
April 30, 2020 18:54
-
-
Save onhernandes/8f68d9b410cf50814c4b875c6a83965c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
hoteis = [ | |
{ | |
"nome" : "lakewood", | |
"classificacao" : 3, | |
"regular" : { | |
"dia_da_semana" : 110, | |
"fim_de_semana" : 90, | |
}, | |
"reward" : { | |
"dia_da_semana" : 80, | |
"fim_de_semana" : 80, | |
}, | |
}, | |
{ | |
"nome" : "badgewood", | |
"classificacao" : 4, | |
"regular" : { | |
"dia_da_semana" : 160, | |
"fim_de_semana" : 60, | |
}, | |
"reward" : { | |
"dia_da_semana" : 110, | |
"fim_de_semana" : 50, | |
}, | |
}, | |
{ | |
"nome": "ridgewood", | |
"classificacao" : 5, | |
"regular" : { | |
"dia_da_semana" : 220, | |
"fim_de_semana" : 150, | |
}, | |
"reward" : { | |
"dia_da_semana" : 100, | |
"fim_de_semana" : 40, | |
}, | |
}, | |
] | |
dias_da_semana = { | |
"seg":"dia_da_semana", | |
"ter":"dia_da_semana", | |
"qua":"dia_da_semana", | |
"qui":"dia_da_semana", | |
"sex":"dia_da_semana", | |
"sab":"fim_de_semana", | |
"dom":"fim_de_semana", | |
} | |
# texto = input("Olá! Digite o tipo de cliente que você é e os dias que você quer viajar ( Exemplo: Regular: 16Dez2018(mon) ): ") | |
texto = 'regular: 16Mar2009(sab), 17Mar2009(sab), 20Mar2009(sab)' | |
tipo_de_cliente, datas = texto.split(":") | |
datas = [ e.strip() for e in datas.split(',')] | |
datas = [ e[e.index('(') + 1:e.index(')')] for e in datas ] | |
hotel_mais_barato = [] | |
for hotel in hoteis: | |
total = 0 | |
for data in datas: | |
tipo = tipo_de_cliente.lower() | |
dia_da_semana_ou_fds = dias_da_semana[data] | |
total += hotel[tipo][dia_da_semana_ou_fds] | |
hotel_mais_barato.append({ | |
"total": total, | |
"nome": hotel.get("nome"), | |
"classificacao": hotel.get("classificacao") | |
}) | |
resultado = sorted(hotel_mais_barato, key=lambda it: it.get("total")) | |
if all([ resultado[0].get("total") == curr.get("total") for curr in resultado ]): | |
resultado = sorted(hotel_mais_barato, key=lambda it: it.get("classificacao")) | |
print(tipo_de_cliente, resultado) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment