Définissons la fonction "taille non enveloppée" u
d'une liste imbriquée l
(contenant uniquement des listes) selon les règles suivantes:
- Si
l
est vide, alorsu(l)
est 1. - Si
l
est non vide,u(l)
est égal à la somme des tailles non enveloppées de chaque élément dansl
, plus un.
Votre tâche consiste à écrire un programme (ou une fonction) qui prend une liste en entrée et génère (ou renvoie) la taille non enveloppée de la liste.
Cas de test:
[] -> 1
[[[]],[]] -> 4
[[[]],[[[[]],[]]],[[[]],[[[[]],[[],[[]]]]]]] -> 19
[[[[]]]] -> 4
Il s'agit de code-golf , donc le programme le plus court (en octets) l'emporte.
[[[]][]]
au lieu de cela [[[]],[]]
dans votre deuxième exemple?
["This is some text [with square brackets in] ...[& maybe more than one pair]"]
?
]
ne semble être la solution la plus courte dans de nombreuses langues, il existe également de nombreuses réponses qui résolvent réellement ce défi via la manipulation de liste, et au moins dans les esolangs, compter les occurrences d'un caractère fixe est également très différent de compter les occurrences d'un caractère saisi.
()
place de[]
?