Una semplice sfida per il tuo lunedì sera (beh, o martedì mattina nell'altra metà del mondo ...)
Ti viene dato come input un array nidificato, potenzialmente irregolare, di numeri interi positivi:
[1, [[2, 3, [[4], 5], 6, [7, 8]], 9, [10, [[[11]]]], 12, 13], 14]
Il tuo compito è determinare la sua profondità, che è la massima profondità di annidamento di qualsiasi numero intero nell'elenco. In questo caso, la profondità di 11
è 6
, che è la più grande.
Si può presumere che nessuno degli array sarà vuoto.
È possibile scrivere un programma o una funzione, prendendo l'input tramite STDIN (o l'alternativa più vicina), l'argomento della riga di comando o l'argomento della funzione e producendo il risultato tramite STDOUT (o l'alternativa più vicina), il valore di ritorno della funzione o il parametro della funzione (out).
L'input può essere preso in qualsiasi elenco o formato stringa conveniente che supporti array non rettangolari (con array nidificati di diverse profondità), purché le informazioni effettive non siano preelaborate.
Non è necessario utilizzare alcun componente incorporato relativo alla forma degli array (inclusi quelli integrati che risolvono questa sfida, che consentono di ottenere le dimensioni di un array nidificato). L'unica eccezione a ciò è ottenere la lunghezza di un array.
Si applicano le regole standard del code-golf .
Casi test
[1] -> 1
[1, 2, 3] -> 1
[[1, 2, 3]] -> 2
[3, [3, [3], 3], 3] -> 3
[[[[1], 2], [3, [4]]]] -> 4
[1, [[3]], [5, 6], [[[[8]]]], 1] -> 5
[1, [[2, 3, [[4], 5], 6, [7, 8]], 9, [10, [[[11]]]], 12, 13], 14] -> 6
[[[[[[[3]]]]]]] -> 7
\
negli input? EDIT: non importa mai provato così. Neanche questo funziona. Non posso usare args CMD?