4

我知道可以压缩两个数组,并且可以使用#each 迭代结果。但是你如何用未知数量的枚举来做到这一点?比方说

anand = %w(1-0 0.5-0.5 0.5-0.5 1.0)
carlsen = %w(0-1 0.5-0.5 0.5-0.5 1.0)
kramnik = %w(0.5-0.5 0.5-0.5 0.5-0.5 1.0)
players= [anand, carlsen, kramnik]
#something smart

players.each{|round|puts round} #first line should be  "1-0 0-1 0.5-0.5" 
4

2 回答 2

9
players.transpose.map {|a| a.join(" ")}
于 2010-04-10T22:59:19.827 回答
4
anand.zip(carlsen, kramnik) do |round| puts round.join(" ") end

这将打印:

1-0 0-1 0.5-0.5
0.5-0.5 0.5-0.5 0.5-0.5
0.5-0.5 0.5-0.5 0.5-0.5
1.0 1.0 1.0
于 2010-04-10T22:32:26.507 回答