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