Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --PROBLEM1
- local paper = {}
- for i = 1, 2000 do
- local row = {}
- for j = 1, 2000 do
- table.insert(row, 0)
- end
- table.insert(paper, row)
- end
- for line in io.lines("13.txt") do
- local x, y = line:match("(%d+)%,(%d+)")
- if x and y then
- paper[tonumber(y)+1][tonumber(x)+1] = 1
- end
- end
- local count = 0
- for line in io.lines("13.txt") do
- if count == 1 then
- break
- end
- if line:find("x") then
- local xfold = tonumber(line:match("(%d+)")) + 1
- for y = 1, #paper do
- for x = xfold + 1, #paper[1] do
- if paper[y][x] > 0 then
- paper[y][xfold - (x - xfold)] = paper[y][xfold - (x - xfold)] + paper[y][x]
- paper[y][x] = 0
- end
- end
- end
- count = count + 1
- elseif line:find("y") then
- local yfold = tonumber(line:match("(%d+)")) + 1
- for y = yfold + 1, #paper do
- for x = 1, #paper[1] do
- if paper[y][x] > 0 then
- paper[yfold - (y - yfold)][x] = paper[yfold - (y - yfold)][x] + paper[y][x]
- paper[y][x] = 0
- end
- end
- end
- count = count + 1
- end
- end
- count = 0
- for i = 1, #paper do
- for j = 1, #paper[1] do
- if paper[i][j] > 0 then
- count = count + 1
- end
- end
- end
- print(count)
- --PROBLEM2
- local paper = {}
- for i = 1, 2000 do
- local row = {}
- for j = 1, 2000 do
- table.insert(row, 0)
- end
- table.insert(paper, row)
- end
- for line in io.lines("13.txt") do
- local x, y = line:match("(%d+)%,(%d+)")
- if x and y then
- paper[tonumber(y)+1][tonumber(x)+1] = 1
- end
- end
- for line in io.lines("13.txt") do
- if line:find("x") then
- local xfold = tonumber(line:match("(%d+)")) + 1
- for y = 1, #paper do
- for x = xfold + 1, #paper[1] do
- if paper[y][x] > 0 then
- paper[y][xfold - (x - xfold)] = paper[y][xfold - (x - xfold)] + paper[y][x]
- paper[y][x] = 0
- end
- end
- end
- elseif line:find("y") then
- local yfold = tonumber(line:match("(%d+)")) + 1
- for y = yfold + 1, #paper do
- for x = 1, #paper[1] do
- if paper[y][x] > 0 then
- paper[yfold - (y - yfold)][x] = paper[yfold - (y - yfold)][x] + paper[y][x]
- paper[y][x] = 0
- end
- end
- end
- end
- end
- for i = 1, #paper do
- for j = 1, #paper[1] do
- if paper[i][j] > 0 then
- paper[i][j] = "O"
- else
- paper[i][j] = " "
- end
- end
- end
- local letters = {}
- for i = 1, 6 do
- local line = ""
- for j = 1, 39 do
- line = line .. paper[i][j]
- end
- table.insert(letters, line)
- end
- for _, v in pairs(letters) do
- print(v)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement