AoC 2023 Tag 1
Zur Navigation springen
Zur Suche springen
Beispiel Input
- vim input.txt
1abc2 pqr3stu8vwx a1b2c3d4e5f treb7uchet
Lösung in Go
- go mod init aoc/01
- vim calibration-1.go
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
file, err := os.Open("input.txt")
sum := 0
if err != nil {
panic(err)
}
defer file.Close()
scanner := bufio.NewScanner(file)
for scanner.Scan() {
line := scanner.Text()
line_len := len(line) - 1
for _, char := range line {
if char > 47 && char < 58 {
sum += (int(char) - 48) * 10
break
}
}
for idx := range line {
char := line[line_len - idx]
if char > 47 && char < 58 {
sum += int(char) - 48
break
}
}
}
fmt.Println(sum)
if err := scanner.Err(); err != nil {
fmt.Fprintln(os.Stderr, "file error:", err)
}
}
- go run calibration-1.go