feat: solve day 1 puzzle 1

This commit is contained in:
2025-12-01 11:56:21 +01:00
parent 922aec35c1
commit eb7dc5805f
5 changed files with 45 additions and 3 deletions

25
src/day01/puzzle1.lua Normal file
View File

@@ -0,0 +1,25 @@
local utils = require "utils"
local puzzle1 = {}
function puzzle1.solve(input)
local password = 0
local cursor = 50
local lines = utils.splitLines(input)
for _, line in ipairs(lines) do
local dir = line:sub(1, 1)
local dist = tonumber(line:sub(2))
if dir == "R" then
cursor = cursor + dist
else
cursor = cursor - dist
end
cursor = cursor % 100
if cursor == 0 then
password = password + 1
end
end
return password
end
return puzzle1