TÓPICO

RUNTIME ERROR PYTHON

lpjardim perguntou 4 years ago

Alguém sabe o motivo?

def qsort(lista):
    if len(lista) <= 1:
        return lista
    else:
        esquerda = []
        direita = []
        for x in range(1, len(lista)):
            if lista[x] < lista[0]:
                esquerda.append(lista[x])
            else:
                direita.append(lista[x])
        return qsort(esquerda) + [lista[0]] + qsort(direita)
def busca_binaria_com_repeticao(vetor, inicio, fim, valor):
    meio = int((inicio + fim) / 2)
    if vetor[meio] == valor:
        while vetor[meio] == valor:
            meio = meio - 1
        return meio + 1
    else:
        if inicio == fim:
            return -1
        else:
            if valor > vetor[meio]:
                return busca_binaria_com_repeticao(vetor, meio+1, fim, valor)
            else:
                return busca_binaria_com_repeticao(vetor, inicio, meio-1, valor)
lenin,casos = input().split()
lenin,casos = int(lenin),int(casos)
case = 0
while lenin or casos != 0:
    case += 1
    lista = []
    for i in range(lenin):
        lista.append(int(input()))
    lista = qsort(lista)
    print('CASE# %i:'%case)
    for j in range(casos):
        busca = input()
        busca = int(busca)
        res = busca_binaria_com_repeticao(lista, 0, lenin, busca)
        if res == -1:
            print('%i not found'%busca)
        else:
            res += 1
            print('%i found at %i'%(busca,res))
    lenin,casos = input().split()
    lenin,casos = int(lenin),int(casos)

Este tópico ainda não foi respondido. Seja o primeiro!

Lembre de não publicar soluções. Sua publicação pode ser revisada por nossos moderadores.