Mercurial > lbo > hg > aoc22
changeset 6:dea8d8f60e25
Finish day 05 part 01
author | Lewin Bormann <lbo@spheniscida.de> |
---|---|
date | Wed, 07 Dec 2022 22:14:02 +0100 |
parents | dc901991442c |
children | 6344dda06b86 |
files | 05/05.jl |
diffstat | 1 files changed, 11 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/05/05.jl Tue Dec 06 23:08:24 2022 +0100 +++ b/05/05.jl Wed Dec 07 22:14:02 2022 +0100 @@ -64,8 +64,16 @@ function act(init::Crates, instr::Vector{Instr})::Crates for i in instr + @assert length(init.stacks[i.from]) >= i.n + for j in 1:i.n + push!(init.stacks[i.to], pop!(init.stacks[i.from])); + end + end + init +end - end +function endresult1(c::Crates)::String + String([s[end] for s in c.stacks]) end function run_05(f::String) @@ -73,6 +81,8 @@ ls = collect(eachline(fh)); crates = parse_stacks(ls); instrs = parse_instructions(ls); + crates2 = act(crates, instrs); + println(endresult1(crates2)); end end