package main import ( "fmt" "intcode/internal/interpreter" "intcode/internal/parser" ) func main() { sourceProgram, err := parser.ParseFile(nil) if err != nil { panic(err) } runProgram := make([]int, len(sourceProgram)) for x := 0; x < 100; x++ { for y := 0; y < 100; y++ { copy(runProgram, sourceProgram) runProgram[1], runProgram[2] = x, y interpreter := interpreter.Init(runProgram) for !interpreter.Next() {} if x == 12 && y == 2 { fmt.Printf("Part 1: %v\n", runProgram[0]) } if runProgram[0] == 19690720 { fmt.Printf("Part 2: %02d%02d\n", x, y) } } } }