次のような遅延シーケンスがあるとします。
(def s (iterate inc 1))
(take 10 s)
=> (1 2 3 4 5 6 7 8 9 10)
s
ここで、次のような一連の累積合計を生成したいと思います。
=> (1 3 6 10 15 ...)
これどうやってするの?私が試したのはatom
、合計を使用して累積することです(突然変異) これは累積シーケンスを生成する唯一の方法ですか、それともこれを行うためのより良い方法はありますか?
注: 上記の累積合計は一例です。ソース順序は、他の順序にすることができます。だから私は式を使用することはできません:s(n) = n(n+1)/2