【发布时间】:2021-09-08 10:52:31
【问题描述】:
如何通过索引将一个数字数组添加到另一个数组?尤其是重复索引。就这样
x
1 2 3 4
idx
0 1 0
y
5 6 7
] x add idx;y NB. (1 + 5 + 7) , (2 + 6) , 3 , 4
13 8 3 4
所有名词 (x, idx, y) 可以是数百万个项目,我需要快速“添加”动词。
更新
解决方案(感谢 Dan Bron):
cumIdx =: 1 : 0
:
'i z' =. y
n =. ~. i
x n}~ (n{x) + i u//. z
)
(1 2 3 4) + cumIdx (0 1 0);(5 6 7)
13 8 3 4
【问题讨论】:
标签: j