You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
421 B
19 lines
421 B
setup, moves = ARGF.read.split("\n\n")
|
|
|
|
setup = setup
|
|
.lines(chomp: true)
|
|
.map(&:chars)
|
|
.transpose
|
|
.select { _1.last =~ /\d/ }
|
|
.map { _1[0..-2].join.strip.chars }
|
|
|
|
moves = moves.scan(/move (\d+) from (\d+) to (\d+)/).map { _1.map(&:to_i) }
|
|
moves.each do |n,from,to|
|
|
# n.times {
|
|
# setup[to-1].unshift(setup[from-1].shift)
|
|
# }
|
|
setup[to-1].unshift(*setup[from-1].shift(n))
|
|
end
|
|
|
|
p setup.map(&:first).join
|