Day 5
This commit is contained in:
27
day05/ex2/main.go
Normal file
27
day05/ex2/main.go
Normal file
@@ -0,0 +1,27 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"os"
|
||||
"aoc2022/day05/common"
|
||||
)
|
||||
|
||||
func main() {
|
||||
stacks, movements := common.Parse(*bufio.NewScanner(os.Stdin))
|
||||
|
||||
for _, movement := range(movements) {
|
||||
top := []byte{}
|
||||
for i := 0; i < movement.GetN(); i++ {
|
||||
top = append(top, stacks[movement.GetStart() - 1].Pop())
|
||||
}
|
||||
for i := len(top) - 1; i >= 0; i-- {
|
||||
stacks[movement.GetEnd() - 1].Push(top[i])
|
||||
}
|
||||
}
|
||||
|
||||
for _, stack := range(stacks) {
|
||||
fmt.Print(string(stack.Peek()))
|
||||
}
|
||||
fmt.Println()
|
||||
}
|
||||
Reference in New Issue
Block a user