Eine einfache Herausforderung für Ihren Montagabend (na ja, oder Dienstagmorgen in der anderen Hälfte der Welt ...)
Sie erhalten als Eingabe ein verschachteltes, möglicherweise uneinheitliches Array positiver Ganzzahlen:
[1, [[2, 3, [[4], 5], 6, [7, 8]], 9, [10, [[[11]]]], 12, 13], 14]
Ihre Aufgabe ist es, die Tiefe zu bestimmen, die die größte Verschachtelungstiefe aller Ganzzahlen in der Liste ist. In diesem Fall wird die Tiefe 11
heißt 6
, die am größten ist .
Sie können davon ausgehen, dass keines der Arrays leer ist.
Sie können ein Programm oder eine Funktion schreiben, indem Sie eine Eingabe über STDIN (oder die nächstgelegene Alternative), ein Befehlszeilenargument oder ein Funktionsargument vornehmen und das Ergebnis über STDOUT (oder die nächstgelegene Alternative), einen Funktionsrückgabewert oder einen Funktionsparameter (out) ausgeben.
Die Eingabe kann in einem beliebigen geeigneten Listen- oder Zeichenfolgenformat erfolgen, das nicht rechteckige Arrays (mit verschachtelten Arrays unterschiedlicher Tiefe) unterstützt, sofern die eigentlichen Informationen nicht vorverarbeitet wurden.
Sie dürfen keine eingebauten Elemente verwenden, die mit der Form von Arrays zusammenhängen (einschließlich eingebauter Elemente, die diese Herausforderung lösen und die Abmessungen eines verschachtelten Arrays liefern). Die einzige Ausnahme ist das Abrufen der Länge eines Arrays.
Es gelten die Standardregeln für Code-Golf .
Testfälle
[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
≡
Ist APLs eingebautes Grundelement für genau dies .
\
in den Eingaben verwenden? EDIT: nevermind hat es einfach so ausprobiert. Das funktioniert auch nicht. Darn kann ich keine CMD-Argumente verwenden?