È arrivato un carico di provviste di emergenza, ma c'è un problema. Per proteggerle dai danni, gli oggetti (torce, kit di primo soccorso, coperte) sono imballati dentro delle scatole, e alcune di queste scatole sono a loro volta dentro altre scatole, annidate su più livelli!
Per essere preparati a un'emergenza, tutto deve essere facilmente accessibile in una sola scatola. Riesci a disimballare tutte le provviste e a sistemarle in un'unica scatola, così sono pronte quando servono di più?
Prendi un array annidato di qualsiasi profondità e restituisci un array completamente appiattito.
Tieni presente che alcune tracce potrebbero includere valori simili a null nell'array di input, e il modo in cui questi valori sono rappresentati varia da traccia a traccia. Questi valori vanno esclusi dall'array appiattito.
Inoltre, l'input può essere di un tipo di dato diverso e contenere tipi diversi, a seconda della traccia.
Controlla la suite di test per i dettagli.
input: [1, [2, 6, null], [[null, [4]], 5]]
output: [1, 2, 6, 4, 5]
Lua e Moonscript non possono memorizzare il valore nil in una tabella.
Il concetto di nil in Lua è l'assenza di un valore.
Lua usa l'assegnazione di nil a una chiave di una tabella per eliminare quella chiave dalla tabella.
In questo esercizio, escluderai la stringa "null" dall'array appiattito.
Iscriviti a Exercism per imparare e padroneggiare MoonScript con 126 esercizi e il mentoring di persone reali, tutto gratis.