package main import ( "bufio" "fmt" "os" "strconv" "strings" ) type interval struct { lb,ub int64 } func main(){ fmt.Println("Advent of Code 2025 - Day 5 - Part 1") f,_:= os.Open("5/input") defer f.Close() scanner := bufio.NewScanner(f) var ranges []interval; for scanner.Scan(){ line := scanner.Text() if (len(line) == 0){ break } line_split := strings.Split(line, "-") lb,_ := strconv.ParseInt(line_split[0],10,64) ub,_ := strconv.ParseInt(line_split[1],10,64) ranges = append(ranges, interval{lb,ub}) } res := 0 for scanner.Scan(){ line := scanner.Text() id,_ := strconv.ParseInt(line,10,64) for _, itvl := range ranges { if (itvl.lb <= id && id <= itvl.ub) { res++ break } } } fmt.Println(res) }