def printBestTaxis(qeue, N): i = 0 while i < N and not pq.isEmpty(qeue): taxi = pq.delMin(qeue) print("\n------ " + str(i + 1) + " ------") print("⚛︎ Taxi ID: {0}".format(taxi["id"])) print("⚛︎ Puntaje: {0}".format(round(taxi["points"], 2))) i += 1 print( "\n\nACLARACIÓN: Si aparecen menos taxis de los esperados es porque no hay {0} taxis en esa fecha" .format(N))
def test_empty(minpq): assert pq.isEmpty(minpq) is True
print('Menor Fecha: ' + str(controller.minKey(cont))) print('Mayor Fecha: ' + str(controller.maxKey(cont))) a = False while a == False: try: N = int( input( "Ingrese el número de mejores taxis que desee ver: ")) a = True except: pass Date = input("Fecha (YYYY-MM-DD): ") bestN = controller.getBestNTaxisByDate(cont, Date, N) if bestN == 1: print("El formato de fechas dado es inválido. Vuélvalo a intentar") elif bestN == 0 or pq.isEmpty(bestN): print("No se encontraron taxis en esa fecha") else: print( "\nLa lista de los mejores {0} taxis con sus respectivos puntos es: " .format(N)) printBestTaxis(bestN, N) elif int(inputs[0]) == 6: print("\nBuscando mejores taxis en un rango de fechas: ") print('Menor Fecha: ' + str(controller.minKey(cont))) print('Mayor Fecha: ' + str(controller.maxKey(cont))) a = False while a == False: try: M = int(
def greater(key1, key2): if key1['t'] == key2['t']: return 0 elif key1['t'] < key2['t']: return -1 else: return 1 cola_de_espera = queue.newQueue() minpq = pq.newMinPQ(greater) pq.insert(minpq, {'t': 0, 'evento': 'llegada'}) pq.insert(minpq, {'t': 5, 'evento': 'fin'}) iters = 0 while not pq.isEmpty(minpq) and iters < 100: p = pq.delMin(minpq) if p['evento'] == 'llegada': queue.enqueue(cola_de_espera, 1) pq.insert(minpq, {'t': p['t'] + 1, 'evento': 'llegada'}) print('llegada') if p['evento'] == 'fin': break iters = iters + 1 print(queue.size(cola_de_espera))