From c851361c458b21077cf090eb5b5cfa158e3a059d Mon Sep 17 00:00:00 2001 From: Nico Date: Fri, 12 Dec 2025 18:03:02 +1100 Subject: [PATCH 1/2] ignore 'input.txt' files --- .gitignore | 1 + 2025/1/input.txt | 10 ---------- 2025/2/input.txt | 1 - 3 files changed, 1 insertion(+), 11 deletions(-) create mode 100644 .gitignore delete mode 100644 2025/1/input.txt delete mode 100644 2025/2/input.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..06c798b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +input.txt diff --git a/2025/1/input.txt b/2025/1/input.txt deleted file mode 100644 index 53287c7..0000000 --- a/2025/1/input.txt +++ /dev/null @@ -1,10 +0,0 @@ -L68 -L30 -R48 -L5 -R60 -L55 -L1 -L99 -R14 -L82 diff --git a/2025/2/input.txt b/2025/2/input.txt deleted file mode 100644 index a6d92df..0000000 --- a/2025/2/input.txt +++ /dev/null @@ -1 +0,0 @@ -197-407,262128-339499,557930-573266,25-57,92856246-93001520,2-12,1919108745-1919268183,48414903-48538379,38342224-38444598,483824-534754,1056-1771,4603696-4688732,75712519-75792205,20124-44038,714164-782292,4429019-4570680,9648251-9913729,6812551522-6812585188,58-134,881574-897488,648613-673853,5261723647-5261785283,60035-128980,9944818-10047126,857821365-857927915,206885-246173,1922-9652,424942-446151,408-1000 From 5ce9c707d38a3fddf5ad9c312e38d1f7b943577d Mon Sep 17 00:00:00 2001 From: Nico Date: Fri, 12 Dec 2025 18:04:34 +1100 Subject: [PATCH 2/2] add aoc 2025 day 3 solution --- 2025/3/main.go | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 2025/3/main.go diff --git a/2025/3/main.go b/2025/3/main.go new file mode 100644 index 0000000..0893df8 --- /dev/null +++ b/2025/3/main.go @@ -0,0 +1,65 @@ +package main + +import ( + "bufio" + "fmt" + "os" + "strconv" +) + +func main() { + // iterate over all IDs + joltages := Decode("input.txt") + + var joltagessum int = 0 + + for _, i := range joltages { + var tensColumn int = 0 + var onesColumn int = 0 + + for iteration, x := range i { + num, err := strconv.Atoi(string(x)) + if err != nil { + panic(err) + } + + if tensColumn == 0 { + tensColumn = num + } else if num > tensColumn && iteration != len(i)-1 { + tensColumn = num + onesColumn = 0 + } else if num > onesColumn && onesColumn >= tensColumn { + tensColumn = onesColumn + onesColumn = num + } else if num > onesColumn { + onesColumn = num + } + } + + sum := tensColumn*10 + onesColumn + fmt.Printf("joltage found for %s, %d%d %d\n", i, tensColumn, onesColumn, sum) + joltagessum = joltagessum + sum + } + + fmt.Println("total joltage sum", joltagessum) +} + +func Decode(filename string) []string { + f, err := os.Open(filename) + + if err != nil { + panic(err) + } + + defer f.Close() + + scanner := bufio.NewScanner(f) + var joltages []string + + for scanner.Scan() { + // extract joltage numbers into struct to go over + joltages = append(joltages, scanner.Text()) + } + + return joltages +}