AOC-2021/01-1/main.lua
2021-12-01 18:27:30 +01:00

64 lines
1.2 KiB
Lua
Executable File

#!/usr/bin/env lua
function file_exists(file)
local f = io.open(file, "rb")
if f then f:close() end
return f ~= nil
end
-- get all lines from a file, returns an empty
-- list/table if the file does not exist
function lines_from(file)
if not file_exists(file) then return {} end
lines = {}
for line in io.lines(file) do
lines[#lines + 1] = line
end
return lines
end
function atoi_list(strings)
local ints = {}
for i,s in ipairs(strings) do
ints[#ints + 1] = tonumber(s)
end
return ints
end
function toSlices(ints)
local slices = {}
for k,i in ipairs(ints) do
if(k < (#ints - 1)) then
slices[k] = ints[k] + ints[k+1] + ints[k+2]
end
end
return slices
end
-------------------------------------------------
file = "input.txt"
allLines = lines_from(file)
allInts = atoi_list(allLines)
allSlices = toSlices(allInts)
for a,b in ipairs(allSlices) do
print(b)
end
last , counter = 0 , 0;
last = allSlices[1]
for a,b in ipairs(allSlices) do
if(a == 1) then
else
if(last < b) then
counter = counter + 1
end
last = b
end
end
io.write("The answer is ", counter, ". Congrats, I hope!\n")