如何添加两个多维数组

neo*_*ode 3 ruby arrays multidimensional-array

我想做以下事情:

array1 = [[1, 10], [2, 20], [3, 10], [4, 30]]
array2 = [[1, 10], [2, 10], [3, 5], [4, 10]]
Run Code Online (Sandbox Code Playgroud)

我想添加两个数组,以便添加每个子数组的第二个元素.我想要以下输出.

result = [[1,20],[2,30],[3,15],[4,40]]
Run Code Online (Sandbox Code Playgroud)

saw*_*awa 11

[array1, array2].transpose.map{|(k, v1), (_, v2)| [k, v1 + v2]}
# => [[1, 20], [2, 30], [3, 15], [4, 40]]
Run Code Online (Sandbox Code Playgroud)

  • 喜欢解决方案+1 (3认同)