def f a, b
c = [a, b].transpose.inject [] do |m, e|
m << e if e.first != e.last
m
end.transpose
puts c.first.size - (c.last - c.first).size
end
f [:red, :green, :red, :orange], [:blue, :red, :blue, :blue]
f [:red, :red, :orange, :orange], [:orange, :orange, :red, :red]
f [:green, :green, :orange, :blue], [:green, :green, :orange, :red]
f %w/red green red orange/, %w/blue red blue blue/
f %w/red red orange orange/, %w/orange orange red red/
f %w/green green orange blue/, %w/green green orange red/
source
share