1
0
aoc-2024/main.go
2024-12-05 20:43:35 +02:00

58 lines
891 B
Go

package main
import (
"fmt"
"log"
"os"
"strings"
)
func showUsage() {
print(len(os.Args))
fmt.Printf("Usage: %s <day> <part> [input.txt]\n", os.Args[0])
}
func main() {
if (len(os.Args) < 3) {
showUsage()
return
}
day := os.Args[1]
part := os.Args[2]
var input_filename string
if len(os.Args) <= 3 {
input_filename = "input.txt"
} else {
input_filename = os.Args[3]
}
contents, err := os.ReadFile(input_filename)
if err != nil {
log.Fatal(err)
}
lines := strings.Split(strings.TrimRight(string(contents), "\n"), "\n")
if day == "1" {
if part == "1" {
Day1Part1(lines)
} else if part == "2" {
Day1Part2(lines)
}
} else if day == "2" {
if part == "1" {
Day2Part1(lines)
} else if part == "2" {
Day2Part2(lines)
}
} else if day == "3" {
if part == "1" {
Day3Part1(lines)
} else if part == "2" {
Day3Part2(lines)
}
}
}