From 077d10fe86988e74398a89d9537679eb4a846c4a Mon Sep 17 00:00:00 2001 From: Sebastian Seedorf Date: Sat, 10 Dec 2022 12:39:25 +0100 Subject: [PATCH] Day 10 --- day10/input.txt | 137 ++++++++++++++++++++++++++++++++++++++++++++++++ day10/part1.py | 18 +++++++ day10/part2.py | 14 +++++ 3 files changed, 169 insertions(+) create mode 100644 day10/input.txt create mode 100644 day10/part1.py create mode 100644 day10/part2.py diff --git a/day10/input.txt b/day10/input.txt new file mode 100644 index 0000000..0abc374 --- /dev/null +++ b/day10/input.txt @@ -0,0 +1,137 @@ +noop +addx 22 +addx -17 +addx 1 +addx 4 +addx 17 +addx -16 +addx 4 +addx 1 +addx 21 +addx -17 +addx -10 +noop +addx 17 +addx -1 +addx 5 +addx -1 +noop +addx 4 +addx 1 +noop +addx -37 +addx 5 +addx 27 +addx -22 +addx -2 +addx 2 +addx 5 +addx 2 +addx 5 +noop +noop +addx -2 +addx 5 +addx 16 +addx -11 +addx -2 +addx 2 +addx 5 +addx 2 +addx -8 +addx 9 +addx -38 +addx 5 +addx 20 +addx -16 +addx 8 +addx -5 +addx 1 +addx 4 +noop +noop +addx 5 +addx -2 +noop +noop +addx 18 +noop +addx -8 +addx 2 +addx 7 +addx -2 +noop +noop +noop +noop +noop +addx -35 +noop +addx 32 +addx -26 +addx 12 +addx -8 +addx 3 +noop +addx 2 +addx 16 +addx -24 +addx 11 +addx 3 +addx -17 +addx 17 +addx 5 +addx 2 +addx -15 +addx 22 +addx 3 +noop +addx -40 +noop +addx 2 +noop +addx 3 +addx 13 +addx -6 +addx 10 +addx -9 +addx 2 +addx 22 +addx -15 +addx 8 +addx -7 +addx 2 +addx 5 +addx 2 +addx -32 +addx 33 +addx 2 +addx 5 +addx -39 +addx -1 +addx 3 +addx 4 +addx 1 +addx 4 +addx 21 +addx -20 +addx 2 +addx 12 +addx -4 +noop +noop +noop +noop +noop +addx 4 +noop +noop +noop +addx 6 +addx -27 +addx 31 +noop +noop +noop +noop +noop diff --git a/day10/part1.py b/day10/part1.py new file mode 100644 index 0000000..e9951bb --- /dev/null +++ b/day10/part1.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +lines = (x.strip() for x in open("input.txt")) +signals = 0 +x = 1 +nxt = 20 +pos = 0 + +for line in lines: + pos += 2 if line[0] == 'a' else 1 + if pos >= nxt: + signals += nxt * x + nxt += 40 + if line[0] == 'a': + x += int(line[5:]) + +print(signals) + diff --git a/day10/part2.py b/day10/part2.py new file mode 100644 index 0000000..7ce90ee --- /dev/null +++ b/day10/part2.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python3 + +lines = (x.strip() for x in open("input.txt")) +sprite = 0 +crt = '' + +for line in lines: + crt += '#' if sprite <= len(crt) % 40 < sprite + 3 else ' ' + if line[0] == 'a': + crt += '#' if sprite <= len(crt) % 40 < sprite + 3 else ' ' + sprite += int(line[5:]) + +for i in range(6): + print(crt[i*40:i*40+40])