08/12/12 02:19:09
>>402
先頭の要素が不足する配列って、明示的にnil入れてあることが多いしね。
zipが複数の配列を引数に取ることを思い出して作り替えてみた。
眠いから間違ってるかも。
def Array.zip2(*ary)
size = ary.map{|i| i.length}.max
top = ary.shift.dup
top[size-1] = nil
if block_givin?
top.zip(*ary){|a| yield a}
else
top.zip(*ary)
end
end