defaultdict

O Python tem um conjunto muito útil de estruturas de dados em um dos seus módulos chamado collections. Uma dessas estruturas é um dicionário com um valor padrão — o defaultdict.
Ao criar um defaultdict, podemos passar uma função lambda que retorna um valor padrão para elementos inexistentes:
d = defaultdict(lambda: 'Este item não existe')
d['Anna'] = 10
d['Bob'] = 9

print(d['Bob'])  # 9
print(d[999])    # Este item não existe
Aqui, Anna e Bob são adicionados como chaves no dicionário, mas 999 não está presente, portanto o programa imprime Este item não existe.
Isso é especialmente útil quando lidamos com listas como valores:
grades = defaultdict(lambda: [])
grades['Anna'].append(10)
grades['Anna'].append(9)
grades['Bob'].append(8)
grades['Bob'].append(9)

print(grades['Bob'])  # [8, 9]
print(grades[999])    # []

Desafio

Dadas n partidas entre equipas de futebol e os seus adversários, pede-se que descubra o número de jogos que cada equipa disputou.
A primeira linha da entrada contém um único inteiro n — o número de partidas. As próximas n linhas contêm nomes de equipas separados por um hífen (-) que jogaram entre si. A linha seguinte contém os nomes dos clubes separados por vírgula (,) para os quais o programa deve imprimir o número de partidas jogadas.
O programa deve imprimir os números de partidas para cada uma das equipas solicitadas na última linha da entrada, separados por espaço.
Entrada
Saída
3 Real Madrid-Barcelona Chelsea-Manchester United Arsenal-Barcelona Manchester United,Barcelona,Roma
1 2 0
 

Constraints

Time limit: 1 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue