@@ -7,27 +7,29 @@ import "core:strconv"
77import " core:strings"
88
99main :: proc () {
10- x, y: [dynamic ]int
11- defer {delete (x);delete (y)}
12-
1310 data, ok := os.read_entire_file (" resources/2024/day01-input.txt" )
1411 if !ok do return
1512 defer delete (data)
1613
17- it := string (data)
18- for line in strings.split_lines_iterator (&it) {
14+ lines := strings.split_lines (strings.trim_right_space (string (data)))
15+
16+ x := make ([]int , len (lines))
17+ y := make ([]int , len (lines))
18+ defer {delete (x);delete (y)}
19+
20+ for line, idx in lines {
1921 s := strings.split (line, " " )
20- append (&x, strconv.atoi (s[0 ]) )
21- append (&y, strconv.atoi (s[1 ]) )
22+ x[idx] = strconv.atoi (s[0 ])
23+ y[idx] = strconv.atoi (s[1 ])
2224 }
2325
24- part1_result := part1 (x[:] , y[:] )
26+ part1_result := part1 (x, y)
2527 fmt.println (part1_result) // 1765812
2628
27- part2_result := part2 (x[:] , y[:] )
29+ part2_result := part2 (x, y)
2830 fmt.println (part2_result) // 20520794
2931
30- fmt.println (calculate_similarity_score (x[:] , y[:] )) // 20520794
32+ fmt.println (calculate_similarity_score (x, y)) // 20520794
3133}
3234
3335part1 :: proc (x, y: []int ) -> int {
0 commit comments