Vai al contenuto principale
← OlimpiApp Facile

Informatica · Ricerca

Nomi letti cercando Ivo in un elenco

La funzione seguente cerca un nome in una lista ordinata alfabeticamente e stampa ogni nome che confronta con quello cercato (i nomi si confrontano in ordine alfabetico).

def cerca(a, x):
    lo, hi = 0, len(a) - 1
    while lo <= hi:
        mid = (lo + hi) // 2
        print(a[mid])
        if a[mid] == x:
            return mid
        elif a[mid] < x:
            lo = mid + 1
        else:
            hi = mid - 1
    return -1

Con

a = ["Anna", "Bruno", "Carla", "Dario", "Elena", "Fabio",
     "Giulia", "Luca", "Marta", "Nicola", "Paolo"]

che cosa stampa la chiamata cerca(a, "Ivo")?