class HashTable: def __init__(self, size): self.size = size self.slots = [[] for i in range(size)] def hash(self, s): mult = 1 hash_value = 0 for c in s: c.lower() hash_value += mult * ord(c) mult += 1 return hash_value def put(self, key): hv = self.hash(key) % self.size #supor que todo put é diferente self.slots[hv].append((key)) def get(self, key): hv = self.hash(key) % self.size for k in self.slots[hv]: if key == k: return key return None Table = HashTable(997) nomes_invocadores = [] with open("invocadores.txt", "r", encoding="utf-8") as arquivo: for linha in arquivo: nome = linha.strip() # Remove espaços em branco e quebras de linha if nome: # Garante que não adiciona linhas vazias Table.put(nome) nome_busca = input() while nome_busca != "-1": resultado = Table.get(nome_busca) if resultado: print(f"Nome encontrado: {resultado}") else: print("Nome não encontrado.") nome_busca = input() """ 'a': ['4', '@'], 'e': ['3'], 'i': ['1', '!'], 'o': ['0'], 's': ['5', '$'], 'h': ['#'], 'k': ['<', 'x'], """