u
Yuvalanmış bir listenin l
(yalnızca listeleri içeren) "paketlenmemiş boyut" işlevini aşağıdaki kurallarla tanımlayalım :
- Eğer
l
o zaman, boşu(l)
1'dir. l
Boş değilse ,u(l)
her öğenin sarılmamış boyutlarının toplamınal
artı bire eşittir .
Göreviniz, listeyi girdi olarak alan ve listenin paketlenmemiş boyutunu çıkaran (veya döndüren) bir program (veya işlev) yazmaktır.
Test Durumları:
[] -> 1
[[[]],[]] -> 4
[[[]],[[[[]],[]]],[[[]],[[[[]],[[],[[]]]]]]] -> 19
[[[[]]]] -> 4
Bu kod golf , bu yüzden en kısa program (bayt cinsinden) kazanır.
[[[]][]]
bunun yerine bu biçimde girdi alabilir miyiz [[[]],[]]
?
["This is some text [with square brackets in] ...[& maybe more than one pair]"]
?
]
birçok dilde en kısa çözüm gibi görünse de, bu zorluğu liste manipülasyonu ile çözen birçok cevap da vardır ve en azından sabit bir karakterin oluşumlarını saymak esolangs'da saymaktan oldukça farklıdır. bir giriş karakterinin oluşumları.
()
Bunun yerine kullanabilir miyiz[]
?