feat: solve day 7 puzzle 1

This commit is contained in:
2025-12-07 13:37:38 +01:00
parent 0add2ecd03
commit 39c03d9920
5 changed files with 60 additions and 3 deletions

34
src/day07/puzzle1.lua Normal file
View File

@@ -0,0 +1,34 @@
local utils = require "utils"
local puzzle1 = {}
function puzzle1.solve(input)
local lines = utils.splitLines(input)
local beams = {}
local totalSplits = 0
for i, line in ipairs(lines) do
local newBeams = {}
if i == 1 then
newBeams[line:find("S")] = true
else
for j=1, #line do
if beams[j] then
if line:sub(j, j) == "^" then
totalSplits = totalSplits + 1
newBeams[j - 1] = true
newBeams[j + 1] = true
else
newBeams[j] = true
end
end
end
end
beams = newBeams
end
return totalSplits
end
return puzzle1

7
src/day07/puzzle2.lua Normal file
View File

@@ -0,0 +1,7 @@
local puzzle2 = {}
function puzzle2.solve(input)
return 0
end
return puzzle2