10
This commit is contained in:
@@ -0,0 +1,32 @@
|
|||||||
|
|
||||||
|
with open('input') as file:
|
||||||
|
cmds = file.read().strip().split('\n')
|
||||||
|
|
||||||
|
def execute(cmds):
|
||||||
|
x = 1
|
||||||
|
for cmd in cmds:
|
||||||
|
if cmd=='noop':
|
||||||
|
yield x
|
||||||
|
elif cmd.startswith('addx '):
|
||||||
|
_, v = cmd.split()
|
||||||
|
v = int(v)
|
||||||
|
yield x
|
||||||
|
yield x
|
||||||
|
x += v
|
||||||
|
|
||||||
|
def f(x):
|
||||||
|
return ((res, i) for res, i in zip(execute(cmds), range(1, x+1)) if i in range(20, 260, 40))
|
||||||
|
|
||||||
|
|
||||||
|
print(sum(res*i for res, i in f(220)))
|
||||||
|
|
||||||
|
x = iter(execute(cmds))
|
||||||
|
for i in range(6):
|
||||||
|
for j in range(40):
|
||||||
|
r = next(x)
|
||||||
|
if r-1<=j<=r+1:
|
||||||
|
c = "#"
|
||||||
|
else:
|
||||||
|
c = '.'
|
||||||
|
print(c, end='')
|
||||||
|
print()
|
||||||
@@ -0,0 +1,139 @@
|
|||||||
|
noop
|
||||||
|
addx 12
|
||||||
|
addx -5
|
||||||
|
addx -1
|
||||||
|
noop
|
||||||
|
addx 4
|
||||||
|
noop
|
||||||
|
addx 1
|
||||||
|
addx 4
|
||||||
|
noop
|
||||||
|
addx 13
|
||||||
|
addx -8
|
||||||
|
noop
|
||||||
|
addx -19
|
||||||
|
addx 24
|
||||||
|
addx 1
|
||||||
|
noop
|
||||||
|
addx 4
|
||||||
|
noop
|
||||||
|
addx 1
|
||||||
|
addx 5
|
||||||
|
addx -1
|
||||||
|
addx -37
|
||||||
|
addx 16
|
||||||
|
addx -13
|
||||||
|
addx 18
|
||||||
|
addx -11
|
||||||
|
addx 2
|
||||||
|
addx 23
|
||||||
|
noop
|
||||||
|
addx -18
|
||||||
|
addx 9
|
||||||
|
addx -8
|
||||||
|
addx 2
|
||||||
|
addx 5
|
||||||
|
addx 2
|
||||||
|
addx -21
|
||||||
|
addx 26
|
||||||
|
noop
|
||||||
|
addx -15
|
||||||
|
addx 20
|
||||||
|
noop
|
||||||
|
addx 3
|
||||||
|
noop
|
||||||
|
addx -38
|
||||||
|
addx 3
|
||||||
|
noop
|
||||||
|
addx 26
|
||||||
|
addx -4
|
||||||
|
addx -19
|
||||||
|
addx 3
|
||||||
|
addx 1
|
||||||
|
addx 5
|
||||||
|
addx 3
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
addx 3
|
||||||
|
noop
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 5
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 3
|
||||||
|
noop
|
||||||
|
addx -30
|
||||||
|
addx -4
|
||||||
|
addx 1
|
||||||
|
addx 18
|
||||||
|
addx -8
|
||||||
|
addx -4
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
addx 7
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 5
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 5
|
||||||
|
addx -2
|
||||||
|
addx -20
|
||||||
|
addx 27
|
||||||
|
addx -20
|
||||||
|
addx 25
|
||||||
|
addx -2
|
||||||
|
addx -35
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 4
|
||||||
|
addx 3
|
||||||
|
addx -2
|
||||||
|
addx 5
|
||||||
|
addx 2
|
||||||
|
addx -11
|
||||||
|
addx 1
|
||||||
|
addx 13
|
||||||
|
addx 2
|
||||||
|
addx 5
|
||||||
|
addx 6
|
||||||
|
addx -1
|
||||||
|
addx -2
|
||||||
|
noop
|
||||||
|
addx 7
|
||||||
|
addx -2
|
||||||
|
addx 6
|
||||||
|
addx 1
|
||||||
|
addx -21
|
||||||
|
addx 22
|
||||||
|
addx -38
|
||||||
|
addx 5
|
||||||
|
addx 3
|
||||||
|
addx -1
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
addx 5
|
||||||
|
addx 1
|
||||||
|
addx 4
|
||||||
|
addx 3
|
||||||
|
addx -2
|
||||||
|
addx 2
|
||||||
|
noop
|
||||||
|
addx 7
|
||||||
|
addx -1
|
||||||
|
addx 2
|
||||||
|
addx 4
|
||||||
|
addx -10
|
||||||
|
addx -19
|
||||||
|
addx 35
|
||||||
|
addx -1
|
||||||
|
noop
|
||||||
|
noop
|
||||||
|
noop
|
||||||
Reference in New Issue
Block a user