我总共有10件物品。我在3天内失去了所有这些:第1天5件,第2天3件,最后一件2件。我需要在每天结束时获得剩余项目的数组[5, 2, 0]
。如果总10
和丢失的项目数组[5, 3, 2]
,我如何获得数组?
答案 0 :(得分:1)
[5, 3, 2].each_with_object([10]){|e, a| a.push(a.last - e)}.drop(1)
# => [5, 2, 0]
知道为什么需要并发症drop(1)
?这是因为,没有它,答案就更符合逻辑。你的要求很复杂。
[5, 3, 2].each_with_object([10]){|e, a| a.push(a.last - e)}
# => [10, 5, 2, 0]
初始10
代表初始状态。