Day 10 2022
This commit is contained in:
parent
5a2b225dfa
commit
f4c6c420de
3 changed files with 353 additions and 0 deletions
145
Python/2022/10/input
Normal file
145
Python/2022/10/input
Normal file
|
|
@ -0,0 +1,145 @@
|
||||||
|
addx 1
|
||||||
|
addx 4
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx 4
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 4
|
||||||
|
addx 1
|
||||||
|
addx 5
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 5
|
||||||
|
addx -1
|
||||||
|
addx 3
|
||||||
|
addx 3
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 4
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx -38
|
||||||
|
addx 10
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
addx 3
|
||||||
|
addx -2
|
||||||
|
addx 2
|
||||||
|
addx 5
|
||||||
|
addx 2
|
||||||
|
addx -13
|
||||||
|
addx 14
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -9
|
||||||
|
addx 19
|
||||||
|
addx -2
|
||||||
|
addx 2
|
||||||
|
addx -9
|
||||||
|
addx -24
|
||||||
|
addx 1
|
||||||
|
addx 6
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -2
|
||||||
|
addx 5
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -12
|
||||||
|
addx 15
|
||||||
|
noop
|
||||||
|
addx 3
|
||||||
|
addx 3
|
||||||
|
addx 1
|
||||||
|
addx 5
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -24
|
||||||
|
addx 29
|
||||||
|
addx 5
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -37
|
||||||
|
noop
|
||||||
|
addx 26
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -18
|
||||||
|
addx 28
|
||||||
|
addx -24
|
||||||
|
addx 17
|
||||||
|
addx -16
|
||||||
|
addx 4
|
||||||
|
noop
|
||||||
|
addx 5
|
||||||
|
addx -2
|
||||||
|
addx 5
|
||||||
|
addx 2
|
||||||
|
addx -18
|
||||||
|
addx 24
|
||||||
|
noop
|
||||||
|
addx -2
|
||||||
|
addx 10
|
||||||
|
addx -6
|
||||||
|
addx -12
|
||||||
|
addx -23
|
||||||
|
noop
|
||||||
|
addx 41
|
||||||
|
addx -34
|
||||||
|
addx 30
|
||||||
|
addx -25
|
||||||
|
noop
|
||||||
|
addx 16
|
||||||
|
addx -15
|
||||||
|
addx 2
|
||||||
|
addx -12
|
||||||
|
addx 19
|
||||||
|
addx 3
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
addx -27
|
||||||
|
addx 36
|
||||||
|
addx -6
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 7
|
||||||
|
addx -33
|
||||||
|
addx -4
|
||||||
|
noop
|
||||||
|
addx 24
|
||||||
|
noop
|
||||||
|
addx -17
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx 4
|
||||||
|
addx 1
|
||||||
|
addx 14
|
||||||
|
addx -12
|
||||||
|
addx -14
|
||||||
|
addx 21
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 5
|
||||||
|
addx -17
|
||||||
|
addx 1
|
||||||
|
addx 20
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
62
Python/2022/10/main.py
Normal file
62
Python/2022/10/main.py
Normal file
|
|
@ -0,0 +1,62 @@
|
||||||
|
input = open("input", 'r')
|
||||||
|
# input = open("sample", 'r')
|
||||||
|
data = []
|
||||||
|
|
||||||
|
mode = 0
|
||||||
|
total = 0
|
||||||
|
for line in input:
|
||||||
|
data.append(line.strip())
|
||||||
|
|
||||||
|
x = 1
|
||||||
|
i = 1
|
||||||
|
for line in data:
|
||||||
|
# No-op
|
||||||
|
if len(line) == 4:
|
||||||
|
i += 1
|
||||||
|
if (i + 20) % 40 == 0:
|
||||||
|
total += i * x
|
||||||
|
continue
|
||||||
|
# addx
|
||||||
|
else:
|
||||||
|
i += 1
|
||||||
|
if (i + 20) % 40 == 0:
|
||||||
|
total += i * x
|
||||||
|
i += 1
|
||||||
|
addx, num = line.split(" ")
|
||||||
|
x += int(num)
|
||||||
|
if (i + 20) % 40 == 0:
|
||||||
|
total += i * x
|
||||||
|
|
||||||
|
print(total)
|
||||||
|
CRT = ["." for _ in range(40*6)]
|
||||||
|
def printcrt():
|
||||||
|
for i, dot in enumerate(CRT):
|
||||||
|
print(dot, end="")
|
||||||
|
if (i+1) % 40 == 0:
|
||||||
|
print()
|
||||||
|
|
||||||
|
data2 = []
|
||||||
|
i = 1
|
||||||
|
for line in data:
|
||||||
|
# No-op
|
||||||
|
if len(line) == 4:
|
||||||
|
data2.append([line, 0])
|
||||||
|
continue
|
||||||
|
# addx
|
||||||
|
else:
|
||||||
|
addx, num = line.split(" ")
|
||||||
|
data2.append(["noop", 0])
|
||||||
|
data2.append([addx, int(num)])
|
||||||
|
|
||||||
|
x = 1
|
||||||
|
for i in range(40*6):
|
||||||
|
index = i % 40
|
||||||
|
rng = list(range(x-1, x+2))
|
||||||
|
if index in rng:
|
||||||
|
CRT[i] = "#"
|
||||||
|
# run instruction
|
||||||
|
instr = data2[i]
|
||||||
|
if instr[0] == "addx":
|
||||||
|
x += instr[1]
|
||||||
|
|
||||||
|
printcrt()
|
||||||
146
Python/2022/10/sample
Normal file
146
Python/2022/10/sample
Normal file
|
|
@ -0,0 +1,146 @@
|
||||||
|
addx 15
|
||||||
|
addx -11
|
||||||
|
addx 6
|
||||||
|
addx -3
|
||||||
|
addx 5
|
||||||
|
addx -1
|
||||||
|
addx -8
|
||||||
|
addx 13
|
||||||
|
addx 4
|
||||||
|
noop
|
||||||
|
addx -1
|
||||||
|
addx 5
|
||||||
|
addx -1
|
||||||
|
addx 5
|
||||||
|
addx -1
|
||||||
|
addx 5
|
||||||
|
addx -1
|
||||||
|
addx 5
|
||||||
|
addx -1
|
||||||
|
addx -35
|
||||||
|
addx 1
|
||||||
|
addx 24
|
||||||
|
addx -19
|
||||||
|
addx 1
|
||||||
|
addx 16
|
||||||
|
addx -11
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 21
|
||||||
|
addx -15
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -3
|
||||||
|
addx 9
|
||||||
|
addx 1
|
||||||
|
addx -3
|
||||||
|
addx 8
|
||||||
|
addx 1
|
||||||
|
addx 5
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -36
|
||||||
|
noop
|
||||||
|
addx 1
|
||||||
|
addx 7
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
addx 6
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 7
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx -13
|
||||||
|
addx 13
|
||||||
|
addx 7
|
||||||
|
noop
|
||||||
|
addx 1
|
||||||
|
addx -33
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 8
|
||||||
|
noop
|
||||||
|
addx -1
|
||||||
|
addx 2
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx 17
|
||||||
|
addx -9
|
||||||
|
addx 1
|
||||||
|
addx 1
|
||||||
|
addx -3
|
||||||
|
addx 11
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -13
|
||||||
|
addx -19
|
||||||
|
addx 1
|
||||||
|
addx 3
|
||||||
|
addx 26
|
||||||
|
addx -30
|
||||||
|
addx 12
|
||||||
|
addx -1
|
||||||
|
addx 3
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -9
|
||||||
|
addx 18
|
||||||
|
addx 1
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 9
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx -1
|
||||||
|
addx 2
|
||||||
|
addx -37
|
||||||
|
addx 1
|
||||||
|
addx 3
|
||||||
|
noop
|
||||||
|
addx 15
|
||||||
|
addx -21
|
||||||
|
addx 22
|
||||||
|
addx -6
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx -10
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 20
|
||||||
|
addx 1
|
||||||
|
addx 2
|
||||||
|
addx 2
|
||||||
|
addx -6
|
||||||
|
addx -11
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
Loading…
Add table
Add a link
Reference in a new issue