Somma della Lista di Liste
Il tuo compito è creare una funzione che prenda una lista di interi annidata profondamente e calcoli la somma di tutti gli interi nella lista. La lista può avere qualsiasi profondità e la profondità può variare tra i diversi rami della lista.
L'input del tuo programma sarà una singola riga che contiene una rappresentazione in forma di stringa di una lista annidata profondamente. Ogni lista è denotata da parentesi quadre
[]
, e i suoi elementi sono separati da virgole ,
. Ogni lista annidata è contenuta all'interno di un'altra lista. Tutti gli elementi sono interi positivi. Puoi caricare le liste con eval(input())
.L'output del tuo programma dovrebbe essere un singolo intero: la somma di tutti gli interi contenuti nella lista annidata.
Input | Output |
[1, 1, 1] | 3 |
[1, [1, 1]] | 3 |
[1, 2, [3, 4, [5, 6]], 7, [8, [9, 10]]] | 55 |
Spiegazione: Nell'esempio sopra, la lista è annidata fino a una profondità di 3 in alcuni punti (ad esempio,
[3, 4, [5, 6]]
) e di 2 in altri (ad esempio, [8, [9, 10]]
). Gli interi 1, 2, 3, 4, 5, 6, 7, 8, 9 e 10 sommano tutti insieme a 55.Constraints
Time limit: 1 seconds
Memory limit: 512 MB
Output limit: 1 MB