From b1be29c21c098ff67f07284840f9a51f4155220c Mon Sep 17 00:00:00 2001 From: Kharec Date: Mon, 1 Dec 2025 12:35:20 +0100 Subject: [PATCH] feat: solve part two using modular arithmetic --- internal/2022/DayTwo/code.go | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/internal/2022/DayTwo/code.go b/internal/2022/DayTwo/code.go index d74dbbf..c8317bd 100644 --- a/internal/2022/DayTwo/code.go +++ b/internal/2022/DayTwo/code.go @@ -38,5 +38,25 @@ func PartOne(data []string) int { } func PartTwo(data []string) int { - return 0 + totalScore := 0 + for _, line := range data { + opponent := line[0] + outcome := line[2] + + var me byte + switch outcome { + case 'Y': + me = 'X' + (opponent - 'A') + case 'Z': + me = 'X' + ((opponent-'A')+1)%3 + default: + me = 'X' + ((opponent-'A')+2)%3 + } + + shapeScore := int(me - 'X' + 1) + outcomeScore := int(outcome-'X') * 3 + + totalScore += shapeScore + outcomeScore + } + return totalScore }