defaultdict

Python ha un insieme molto utile di strutture dati in uno dei suoi moduli chiamato collections. Una di queste strutture dati è un dizionario con un valore predefinito: defaultdict.
Quando creiamo un defaultdict, possiamo passare una funzione lambda che restituirà un valore di default per gli elementi mancanti:
d = defaultdict(lambda: 'Questo elemento non esiste')
d['Anna'] = 10
d['Bob'] = 9

print(d['Bob'])  # 9
print(d[999])    # Questo elemento non esiste
Qui Anna e Bob sono aggiunti come chiavi del dizionario, ma 999 non è presente, quindi il programma stampa Questo elemento non esiste.
Questo è particolarmente utile quando si lavora con liste come valori:
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])    # []

Sfida

Date n partite tra squadre di calcio e i loro avversari, vi viene chiesto di determinare il numero di partite giocate da ogni squadra.
La prima riga dell'input contiene un singolo intero n - il numero di partite. Le successive n righe contengono i nomi delle squadre che hanno giocato tra loro, separati da un trattino (-). La riga seguente contiene i nomi dei club per i quali il programma dovrebbe stampare il numero di partite giocate, separati da virgole (,).
Il programma dovrebbe stampare i numeri di partite per ciascuna delle squadre richieste nell'ultima riga dell'input, separati da spazi.
Input
Output
3 Real Madrid-Barcelona Chelsea-Manchester United Arsenal-Barcelona Manchester United,Barcelona,Roma
1 2 0
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

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