x.map{|i| x.map{|j| (i-j).abs } }
дает
[[0, 3, 6, 31, 56],
[3, 0, 3, 28, 53],
[6, 3, 0, 25, 50],
[31, 28, 25, 0, 25],
[56, 53, 50, 25, 0]]
(отформатируйте его так, напечатав его с помощью «pp» вместо put)
и
x.map{|i| x.map{|j| (i-j).abs } }.flatten
1010 * дает *
[0, 3, 6, 31, 56, 3, 0, 3, 28, 53, 6, 3, 0, 25, 50, 31, 28, 25, 0, 25, 56, 53, 50, 25, 0]
если вы действительно хотите массив