~mcf/adventofcode

dc1a36e2db8aecdcceffe3e7267d3c1968ea4a2b — Michael Forney 11 months ago 9fff21f
Day 13
3 files changed, 1410 insertions(+), 1 deletions(-)

A 2023/13.lua
A 2023/13.txt
M 2023/Makefile
A 2023/13.lua => 2023/13.lua +54 -0
@@ 0,0 1,54 @@
local function transpose(grid, width)
	local new = {}
	for x = 1, width do
		local col = 0
		for y = 1, #grid do
			col = col << 1 | (grid[y] >> width - x) & 1
		end
		new[x] = col
	end
	return new
end
local function reflect(grid)
	local i1, i2 = 0, 0
	for i = 1, #grid - 1 do
		local diff, smudge
		for j = 1, math.min(#grid - i, i) do
			local bits = grid[i - j + 1] ~ grid[i + j]
			if bits ~= 0 then
				if smudge or bits & bits - 1 ~= 0 then
					diff = true
					break
				end
				smudge = true
			end
		end
		if not diff then
			if smudge then i2 = i else i1 = i end
		end
	end
	return i1, i2
end

local ans1, ans2, rock = 0, 0, string.byte'#'
repeat
	local grid, done, width = {}, true
	for line in io.lines() do
		if #line == 0 then done = false break end
		if not width then width = #line end
		local row = 0
		for x = 1, #line do
			row = row << 1 | (string.byte(line, x) == rock and 1 or 0)
		end
		table.insert(grid, row)
	end
	local r1, r2 = reflect(grid)
	ans1 = ans1 + r1 * 100
	ans2 = ans2 + r2 * 100
	if r1 == 0 or r2 == 0 then
		local c1, c2 = reflect(transpose(grid, width))
		ans1 = ans1 + c1
		ans2 = ans2 + c2
	end
until done
print(ans1, ans2)

A 2023/13.txt => 2023/13.txt +1355 -0
@@ 0,0 1,1355 @@
####....####.#.##
.....#..#.#...#.#
#......##..#.###.
...####.#.##.#...
###...##.#..#.###
###..###.#..#.###
...####.#.##.#...
.#..#......#####.
.#..#......#####.
...####.#.##.#...
###..###.#..#.###
###...##.#..#.###
...####.#.##.#...

...#..#
...#..#
##..##.
.#.##.#
..#..##
#.#.##.
#.#.###
##.##..
##.##..
#.#.###
..#.##.
..#..##
.#.##.#
##..##.
...#..#

.##...#.##.
....#..#..#
##..##..##.
##.#..#.#..
###..#.####
....#..####
....#..####
###..#.####
##.#..#.#..

.....#...
.####.##.
###...#.#
###...#.#
.####.##.
.#...#...
##.##.###
.#..#.##.
##......#
##.#..##.
#..#.#..#
##.###..#
.##...###
.#.###...
.###.#...
.###.#...
.#.###...

....#..#..##.#.#.
..#.##.#..###.##.
##..#..#..##.#.##
###..#.#.#....#.#
###..#.#.#....#.#
##..#..#..##.#.##
..#.##.#..###.##.
....#..#..##.#.#.
#...#.#.#.#..#...
#...#.##..##.##.#
#.....##.#...####
.##..########..##
...##...##.##...#
...##...##.##...#
.##...#######..##

..#.#.#.##.#.#.#.
..#.#.#.##.#.#.#.
##.##.######.##.#
#.##..#....#..##.
..#.####..####.#.
#.###........###.
....#..#..#..#...
..##.##.##.##.##.
##.....####.....#
#.#####.##.#####.
###.#.##..##.#.##
.#####.####.#####
#.#....####......
.##...#....#...##
...#...####...#..
###.#.#.##.#.#.##
#..##..#..#..##..

...#.###..###.#..
......#.##.#.....
##.###.####.###.#
###..#......#..##
##..#...##...#..#
..###.#.##.#.###.
##.##.#....#.##.#
.....#.#..#.#....
####.###..###.###
....###.##.###...
..###.##..##.###.
##.#..######..#.#
...####.##.####..
..##.#.#..#.#.##.
..###.######.###.
##.#....##.#..#.#
##..##.#..#.##..#

#.####.##..#.
##....##...#.
#..##..#.##.#
##....##.####
#......#####.
#..#...##.#.#
.........##..
.##..##...##.
..####..###.#
#..##..#.#.#.
###..###.###.
###..###.###.
#..##..#.#.#.
..####..###.#
.##..##...##.

##..#.#...#..####
##..#.#...#..####
.######..####...#
#..#..####.####..
.#..#........###.
.#..#........###.
#..#..####.#.##..
.######..####...#
##..#.#...#..####

####.#.#.#..##.
.....##....##..
#..##..#.#.#...
.#..#.#..###.#.
.#..#.#..###.#.
#..##..#.#.#...
.....##....##..
####.#.#.#..##.
.#..#.#######.#
##..###.#...#..
#.##.##....##..
####.##....##..
##..###.#...#..

##....###
.#.#.#.##
###..#...
##..####.
.##.#...#
#...#....
#...#....
.##.#...#
##..####.
###..#...
.###.#.##
##....###
##....###

...#....#....
###......####
#..#######.##
#..#....#..##
####.##.#####
...#....#....
.#.#....#.#..

.#.####.#.#......
###....#####.####
..#.##.#..##..##.
.#..##..#...#....
....##....##.####
.#.####.#.######.
##########....##.
..#....#...##....
#..#..#..##.#####
#........###..##.
.##....##....####
##.####.###.#.##.
###.##.####.#....
.##.##.##.....##.
..#.##.#...##....
##......###..####
.#......#.###.##.

#..#..#....##....
.##.#..####..#...
.##.##.####..#...
#..#..#....##....
#..#..####.##....
####..##..###..##
.##.#.#...####.##
#..######.##...##
####.####..##..##
.##..####.#.#.#.#
#..#..#######.#.#
#..##...#.#.#.#..
.....#.##.....##.

...#..#
#.##..#
#.##..#
...#..#
####..#
#......
#.##..#
.##.##.
.###..#
..#....
#.#.##.
##....#
..##..#

..#.##.#.#..###
###..##..#.###.
.....###...####
.#.###..##.#...
...#..###.##..#
...#..###.##..#
.#.###..##.#...
.....###...####
###..##.##.###.
..#.##.#.#..###
.##.#...#..###.
.######..#.#...
.##.#.....#..#.
###.#.###.####.
###.#.###.####.
.##.#.....#..#.
.######..#.#...

.##...#..##
####.###..#
####..#...#
#..#...#..#
....##.....
.##.#..#.#.
.##.######.
.##.#.#..##
.##.#.##.##
.##.######.
.##.#..#.#.

##...#.#.######
##.#.#.########
.#.##.#.#...###
.....###.####..
###......##..##
####..#..##....
.######..##....
..##.#####..###
.###..#.##..###
.###..###...#..
..###.#...#.#..
#.#...#..#.#...
#.#...#..#.#...
..###.#...#.#..
.###...##...#..

.####.#....
...#..#####
...#..#####
.####.#....
###..#..###
...#.......
..#..#.#..#
#......####
.###.#.....
...########
.###.###..#

####.###..##.
.#.#.#..####.
.#.#.#..####.
####.###..##.
###..###.###.
.#.####..#.##
#.#.#.##.#.#.
#..#.###..#..
#.....######.
#....##.#..#.
.####..#.....
.........#...
.###.#..##.##
..####.#..#..
..#..#.#..#.#
.####..#.##.#
.###...#.##.#

..#.####...
####.#..##.
#########..
...#......#
##..#..#..#
##.....#..#
...#......#

##.##.##......#
##....####..###
........#....#.
..#..#.........
..####..#....#.
##.##.##.#..#.#
#..##..########
.#....#.#....#.
..#####.######.
.........#..#..
.##..##..#..#..
.##..##..####..
..####..######.
.######.##..##.
.##..##.##..##.
#.#..#.#.####.#
#..##..#......#

.##...###.##...#.
#####...###..##.#
.##.#.##########.
#..##.#.#..#..##.
....##.#..###...#
####......#....##
#..#.#..#########
.##...##.###.###.
#..#####.##.##..#
.##..#..##.#.#.#.
#..#..#.#.......#
#..##....#.####..
#..##.#.#..#....#
#######....#..#..
.##..#..##.#####.
.##..#..##.#####.
########...#..#..

#..#.#.#...
....#..####
......##..#
.....###.#.
........#.#
####.####.#
#######.###
#####.#.###
#####..#..#

.##..#.
.##..#.
####...
....#.#
#..####
..#.#.#
......#
.##.##.
.##.#..
....#..
####.#.
.##.#..
#..##..

..#.#.#
####...
.#.#.#.
.#.#.#.
####...
..#.#.#
#....#.
...#.##
.....#.
.....##
.....##
.....#.
...#.#.
#....#.
..#.#.#

.#...##...##.
.##..#..#...#
#.#.##....#.#
#.#.##....###
.##..#..#...#
.#...##...##.
####..#.#.#..
.#..#..#.####
.#..#..#.####
####..#.#.#..
.#...##...##.
.##..#..#...#
#.#.##....###
#.#.##....#.#
.##..#..#...#
.#...##...##.
##.#....#####

..#.#....#.#..#..
....#.##.#.......
.##.#.##.#.##..##
#....####....#.##
..#.##..##.#..###
.##........##..##
###.######.####..
#..#......#..##..
.###..##..###....
##...####...##...
####..##..###.#..
###........######
..#.######.#..#..
#.#.#.##.#.#.#...
.#####..#####....

.#####....#####
.#####....#####
.#.#.######.#.#
#####......####
#.##..####..##.
....##....##...
.#.#........#.#
#...###..####..
.#.#.#.##.#.#.#
###...#..#...##
.#.##..##..##.#

##.#...#.##.#
##..#..######
##.#.#..#..#.
..#####......
...##.#..##..
..#.##.......
##...#.#.##.#
##.##..#....#
##..#.##.##.#
..##.#..#.##.
##.##.#.#..#.

....#..#..#
....#.##..#
###..#.###.
##.####...#
########.#.
..#...##.##
##..#....##
..#..#..##.
#####...#..

#.##########.#.
......##......#
...########....
##..#....#..##.
..##......##...
##....##....###
......##......#
...#......#...#
...#......#....
...##....##....
...##....##....
...#......#....
..##......##..#
......##......#
##....##....###
..##......##...
##..#....#..##.

....#..
.....#.
.##.###
#..##.#
#..##.#
.##..##
.....#.

.#####.##..#.
#....##...#..
#####.#.##.##
..#.#.#####..
.#..#.#.###..
...#..###.##.
#..##...##.#.
#..##...##.#.
...#..###.##.
.#..###.###..
..#.#.#####..
#####.#.##.##
#....##...#..
.#####.##..#.
.#####.##..#.

.#.#..#.#.#
...####...#
.########.#
..#....#..#
.#..##..#.#
###.##.###.
.########..
##.####.##.
.#......#.#
.########..
#.#####..##
....##....#
..#....#...
###....####
###....####

###.#.#....#.
##...#..##..#
#..#.........
....####..###
.#.###.#..#.#
#.#...#.##.#.
#.....#.##.#.
.#.###.#..#.#
....####..###
#..#.........
##...#..##..#

..#..##
##.####
.#.##..
...####
...####
.#.##..
##.####
..#..##
######.

###.##..##.
..#.#######
#..#.#.####
.##.###.##.
.####....#.
###..###..#
.....###..#
.#..##..##.
#.#....####
#..#...#..#
.#..#.#....
.#..#..#..#
...#..##..#
#..###.#..#
..#..#..##.
..#..#..##.
#..###.#..#

...#....##.#.##
.##..#..#.#####
####...#...#.#.
.#.#.......#...
......#.#...#..
.##.#.####...##
.##.#.####...##

##..###.#....
#....####..##
########.#.#.
#.##.##.#...#
#.##.##.##...
.####.###....
######.##..##
######..##.##
.####.#.#.#.#
.####.#.#.#.#
#######.##.##
######.##..##
.####.###....
#.##.##.##...
#.##.##.#...#

##.##.###..####
.##..##...#..#.
########.#.#.#.
#.#..#.#....###
#..##..##.##.##
#..##..##.##.##
#.#..#.#..#.###
########.#.#.#.
.##..##...#..#.
##.##.###..####
#..##..#.#.###.
#.####.#..####.
#..##..###.##..

..#.####.#..#.###
..#.####.#..#.###
#.########.#.##..
####....#######.#
.#.######.#.#####
.....##......#...
#..........###.##
.####..####.#...#
##........####..#
#....##....#...##
.#..#.....#.#...#

##..####.#.
.#..#.#.#.#
......#.#.#
##..###..##
..##..#.#.#
..##..#.#.#
##..###..##
......#.###
.#..#.#.#.#
##..####.#.
##..#######
#.##.#.#...
######.....
..##..#.#.#
#.##.##.#..
.####.####.
..##...#..#

#..#....#..###.
#..#....#..###.
...##..##...#..
##...##...####.
###.####.####..
.##......##..#.
...####.#.....#

####.#.##..##
###..#.##..##
#.##.....###.
#...##..###.#
.##..#.##..##
#.#....####.#
##...####..##
.#...#####...
.#...#####...

#.##.#...#.####.#
#.#..#...#.####.#
#.#...##.#.####.#
###.###.#.######.
.#.....##########
...#..#..#..##..#
.###.####.##..##.
##.#####.##.##.##
..##.#.###.####.#

###...#######
#..###.###..#
##.##...#.##.
##.#..##.....
#.#.#.....##.
....#........
....#........
#.#.#.....##.
#..#..##.....
##.##...#.##.
#..###.###..#
###...#######
..###.##.....

#.##....##.#.##
#.#......#.##..
.##########.###
.#.######.#.###
#.###..###.#.##
....####.....##
.....##........
.#..#.....#..##
....####.......
#.#.####.#.##..
###.####.###...
.#........#..##
..##....##.....

...##..##.....#
.####..####....
.####..####....
...##..##.....#
####.##.##.#.#.
.###....###..##
...#....#...##.
##.##..##.##.#.
..#......#..#.#

.###.......
##..##.####
##..##.####
.###.......
..##..#..##
#..###....#
.....######

##...####...#####
...#..##..#......
.#.#.####.#.#..#.
######..######..#
######..######.##
####..##..####..#
##..######..##...

......####.
.....#...##
#..#...##..
#..##..##..
#..#..####.
.....##..##
....#.#..#.
.......##..
.....#.##.#
#..##..##..
######....#

#..#.##..#..#..##
##.#..####..#.###
....##....##.....
##.##.####.##.###
#.#.###..###.#.##
#.############.##
.#.#.#....#.#.#..

.#..#.....#####
.####.#.#....##
.####.#.#....##
.#..#.....#####
.####..##.##.#.
##..####.#..#..
.####.#....#..#
.#..#.#########
########...##..
..##....#.#..#.
....#...#.#.###
#....#.##.#####
..##....#..###.
.........####.#
..##...#......#
##..##.....#..#
#....#...#.##..

#.##..#####
#...##..###
#.###.##...
.#.###.#...
#.##..#....
..##..#..##
####..#.#..
.#.####....
####.#.....
####.#.....
.#..###....
####..#.#..
..##..#..##

##..#.###
....#....
.....##..
.#.##....
.#.#.....
.....##..
....#....
##..#.###
###.###..
....#..##
##...#...

#####...###..#.
#..###..###.#.#
......#..#...#.
####.....##.##.
####.....##.##.
......#..#...#.
#..###..###.#.#
#####...###..#.
####...####..#.
####.#....#.##.
......#.##..#.#
#####..##...#..
....####..#.#.#
............#.#
..#.##..#.####.
......##.##...#
....##.#.##..##

#.#...#
#..##..
#..###.
#.#...#
.####..
#...##.
######.
...#..#
.#.##..
..###..
.#.##..
..##.#.
..##.#.
.#.##..
..###..
.#.##..
...#..#

.....##.####.##
#..#..###..###.
#..##..#....#..
....#.#..##.##.
.##.###......##
#####..######..
####..#......#.
#..###........#
#..##.###..###.
.##...########.
......#.####.#.
.##.##.######.#
######........#

##..###
.####..
..##...
######.
.####..
..##...
..##..#

.#..#.##...#.##
.#.###.#.#..###
#.##.####.##...
..##...##.##..#
..##...##.##..#
#.##.####.##...
.#.###.#.#..###
.#..#.##...#.##
.###...#.####..
#.......###..#.
#.......###.##.

#..#.#..###
..###..##..
..###..##..
#..#.#..###
........###
##....####.
...#..#....
#.#..#.#..#
.#...##.#..
.#....#.#..
#.#..#.#..#
...#..#....
##....####.
........###
#..#.#..###

.#.####..
###...###
##.##....
##.##....
###...###
.#.####..
..#..##..
...##.##.
##.###...
#..##.#..
.#.#..###

.#.#.##.#.#.##..#
.#.##..##.#..####
..##.##.##...####
.#..#..#..#.##..#
#.##.##..#.#..##.
#..######..#.####
...#....#....#..#
#.##....##.###..#
.....##.....#.##.
.#.##..##.#.#....
#.########.#.#..#
..#.####.#..#....
##.#....#.##.....

....###.#.#.###
###....#..###..
.#.#.#.##.##.#.
...#..#####..##
###..###.######
#..###..#..##..
##...#.#..#####
##...#.#..#####
#.####..#..##..
###..###.######
...#..#####..##
.#.#.#.##.##.#.
###....#..###..
....###.#.#.###
.#..###.....#.#
.#..###.....#.#
....###.#.#.###

#....#...
######.#.
.#..#....
##..###.#
#.##.#...
.####..##
#.##.#...
#....##.#
#....###.
##..###.#
##..###..
.#..#..#.
#######.#
#.##.#.##
#.##.#.#.

.....#...#..#
#####...#####
########.###.
...#..####...
...#..####...
########.###.
#####...#####
.....#...#..#
..####..####.
..###.#..#..#
....#..#.#.##
..###.#######
##.###.##.##.
##.#.##..###.
#.##...#.##.#

####...####...###
###..########.###
...#...####...#..
..#.#..#..#..#.#.
###.#.#.##.#.#.##
..####.####.####.
..#..###..###..#.
######.#..#.#####
###.###.##.###.##

....###
#......
#..#...
....###
.#..###
..#.#..
#####.#
#####.#
..#.#..
.#..###
....###
#..#...
#......
....###
.##.##.

####..#..
#..##...#
#..#....#
....##.#.
....###.#
.##..####
...######
#..#.#...
....#..#.
.##.##..#
.##...#..
.##...#..
.##.##..#

.#..##..#...##.##
.#..##..#...##..#
##......###.#...#
###.##.#####.##.#
##..##..##..#...#
####..########..#
#..#..#..##...##.
....##......#.##.
#........#.###.#.
.########..#..##.
##.#..#.###..#.##
#.#....#.#####.#.
.###..###.#...###

..#.#.#######
......#.##..#
##...#...####
...#...#..##.
...#...#..##.
###.####.####
...#.#.......
##..####..##.
#####.#.##..#
##.#...###..#
.........####
#.##.....####
####..#..####

..##.#..##.
..##.#..##.
..#..##....
.#...##....
#..####.##.
...#.#.....
.#####..##.
###.....###
#.##.#.####

.....######.#
.....######.#
....####...##
#.##.#.#...#.
##...#.#.####
#.#.##.......
..##..#.####.
#..#.#.#####.
###.##.#...##
##.#.#..#.##.
######..#..##
....#######..
....#######..
######..#.###
##.#.#..#.##.

#####..
..#....
...####
..#....
...#.##
...#...
#..#.##

#..#..#..##
##......##.
...##.#...#
#..####..##
....##....#
..#.##.#..#
..##..##..#
###....###.
###....###.
..##..##..#
..#.##.#..#

########...
########...
..##.#....#
##.##.#.###
...##.###.#
....##.#.#.
#####...##.
###.#.####.
###.##.#..#
#.##.#..#.#
..##.#.#.##

##.########.#
##..##..##..#
#..###..###..
##.########.#
##....##....#
..#.#.##.#.#.
###...##...##
###..#..#..##
...###..###..
###...##...##
##..........#
##.###..###.#
###........##
..#..#..#..#.
##.###..###.#
###........##
##.#......#.#

...##.....#..#...
..##..##.######..
.#.###.......##..
#.#..####.####...
.#####....###.###
..####....###.###
#.#..####.####...
.#.###.......##..
..##..##.######..

.#.##..###.#.##
.##.##..#.#####
.....#.#####..#
.....#.#####..#
.##.##..#.#####
.#.##..###.#.##
##.#####.####.#
..##.#..##..#..
##.#.....##..##
##..#...#.#.##.
##..#...#.#.###

###.##.
...#..#
...####
...#.#.
##.##..
.#.....
...##..
##.#.#.
###.##.
..###..
..###.#
..###.#
..###..
###.##.
##.#.#.

.##.##...##.#
.##.##...##.#
.....#...####
.......###...
###..#...#.#.
.##....#...##
#####.#...#.#

..##...##
..###..##
#...#..#.
#.##.####
#.####.#.
.##.....#
.##.....#
#.####.#.
#.##.####
#...#..#.
..###..##

.#.##.#..#..#
.#.##.#..#..#
#.#..#.####.#
.#....#.#.##.
#.###..##.##.
#.#..#.#.###.
##....##.##.#
#.#..#.##.###
...##....#..#
#########....
#......#...##
...##.....#..
..#..#...#.##

.#.#..#########
.....##...##...
.#...##########
.##.#.....##...
.##..#...####..
.#..##.........
...##....####..
.#.#.####.##.##
#...#.#..#..#..
..#..#..#....#.
#.########..###
..#..##..#..#..
.##.#####.##.##

.###..#.###
#.#.##...#.
.###.##.#..
##.#.....#.
...#.#.#..#
.##..###.##
.##..#.#..#
.##..#.#..#
.##..###.##
...#.#.#..#
##.#.....#.
.###.##.#..
#.#.##...#.
.###..#..##
.###..#..##

##.#######.##.###
#....#...#....#..
#....#.#.######.#
.#..#.....#..#...
.####..##......##
..##..##........#
###########..####
#.##.#.#...##...#
#....#....####...
##..##....#..#...
#....#.#..#..#..#

#.###....
.###.#.##
##.#..##.
..#..##.#
#...#....
#...#....
..#..##.#
##.#..##.
.###.#.##
#.###....
..###.#.#
..#.#.#.#
#.###....

#..######..
....##...##
.##..###.##
.##..###.##
....##...##
#..######..
.###.####.#
#.#.#.#..##
#.##..#####
.####..##..
..######.#.
#.#..#.#...
#.#..#.#..#
..######.#.
.####..##..

...##...##...
..####...###.
#..##..###...
#......#####.
.##..##.##..#
.##...#.##...
#########.##.
........##..#
########.####
##.##.##.#.#.
.######.#####
..####...####
..#..#..###..
.######.###..
.######.###..

#...###
.#.####
#..#...
.##.#..
.##.#..
#..#...
.#.####
#..####
#.##.##

#.#.###########
..###.#.##.####
...#.##.###.##.
.#...##..######
.#....#.#######
..#.##.#.#..##.
#######.####.##
.####.#..#.....
..#...##.......
#...##....#.##.
##.##..##..####
#..#....#..#..#
#..##....###..#
#.#.#...#...##.
...#...##...##.
.##.#...###....
.##.#...###....

.#....#..
..####.##
########.
..#..#..#
#.#..#.##
##.##.##.
##.##.##.
#.#..#.##
..#..#..#

#..##.#.......#
.##.#..###.#.#.
#..#.#.#..####.
.##.#.#.#...###
#..##.#.##..#.#
#..#.#.#....#.#
####..#..####..
.....#.###....#
#..#.###...##..
#..#####..#.###
#..#####..#.###
#..#.###...##..
.....#.###.#..#

..##.....##
##..##...##
#.##.##.##.
#.##.##.##.
##..##...##
..##.....##
.####...#.#
#.##.###.#.
#####.#.##.
.####.###.#
.####...#.#

.#..#..#....#
.#..#..#....#
####.##...##.
#.#.#.#.##...
##..#....##.#
.#.#...##.#.#
####....#.###
.#.#.#.###.##
.#.#.#.###.##
####....#.###
.#.#...##.#.#
##..#....##.#
#.#.#.#.##...
####.##...##.
##..#..#....#

.###.#.##...###
......#...#..#.
...##.##.#.##.#
##...#.........
##...#.........
...##.##.#.##.#
...#..#...#..#.
.###.#.##...###
.#.#.###..##..#
.#.#.###..##..#
.###.#.##...###
...#..#...#..#.
...##.##.#.##.#

.#.###.#.#..#....
...#.....##.#.##.
...#.....##.#.##.
.#..##.#.#..#....
#.#..###.###.####
...#...######.##.
#..##.#.#...#....
.#.#####.#.#..##.
#.###...#.#...##.
..#...###.##.####
.###...#..###....
###.##...##......
#....##..########
###.#.##.#.#.....
#..#.#..#.#.#####

...#...#..##.
.##..##..#..#
..##...#.....
....###.#.#..
#.##.#....##.
.##.#.#######
###.#.#......
###.#.#......
.##.#.#######

###.####.######.#
#.#......#.##.#..
.#..####..#..#..#
#....##....##....
...#....#........
#..#.##.#..##..#.
.#..####..#..#..#
#.###..###.##.###
###.####.######.#
#.#..##..#.##.#..
#..##..##..##..##

M 2023/Makefile => 2023/Makefile +1 -1
@@ 4,7 4,7 @@
LUA?=lua

.PHONY: all
all: 1 2 3 4 5 6 7 9 10 11
all: 1 2 3 4 5 6 7 9 10 11 13

.DEFAULT:
	@printf 'day %s\t' $< && $(LUA) $<.lua < $<.txt