次の規則により、u
ネストされたリストl
(リストのみを含む)の「ラップされていないサイズ」関数を定義しましょう。
l
が空の場合、u(l)
1です。l
が空でない場合、u(l)
は、のすべての要素のラップされていないサイズの合計にl
1を加えたものに等しくなります。
あなたの仕事は、リストを入力として受け取り、リストのラップされていないサイズを出力する(または返す)プログラム(または関数)を書くことです。
テストケース:
[] -> 1
[[[]],[]] -> 4
[[[]],[[[[]],[]]],[[[]],[[[[]],[[],[[]]]]]]] -> 19
[[[[]]]] -> 4
これはcode-golfなので、最短のプログラム(バイト単位)が勝ちます。
[[[]][]]
でこれの代わりにこの形式で入力を取得でき[[[]],[]]
ますか?
["This is some text [with square brackets in] ...[& maybe more than one pair]"]
?
]
多くの言語で最も短い解決策のように思えますが、リスト操作によってこの課題を実際に解決する多くの答えもあります。入力文字の出現。
()
代わりに使用できます[]
か?