summaryrefslogtreecommitdiff
path: root/2024/18/python/main.py
diff options
context:
space:
mode:
authormhsn <mail@mhsn.net>2025-09-12 20:20:58 +0100
committermhsn <mail@mhsn.net>2025-09-12 20:36:09 +0100
commit6b733982f9f240c1c97f1fa705bfbe4cd93c640e (patch)
treedad623203c8bb40f372e0ea14479c2f564efda79 /2024/18/python/main.py
parent9299c4ef655b88eb8b571864c939c78b27f77723 (diff)
downloadaoc-6b733982f9f240c1c97f1fa705bfbe4cd93c640e.tar.gz
aoc-6b733982f9f240c1c97f1fa705bfbe4cd93c640e.zip
simplify python file structure
Diffstat (limited to '2024/18/python/main.py')
-rw-r--r--2024/18/python/main.py45
1 files changed, 0 insertions, 45 deletions
diff --git a/2024/18/python/main.py b/2024/18/python/main.py
deleted file mode 100644
index 071fa90..0000000
--- a/2024/18/python/main.py
+++ /dev/null
@@ -1,45 +0,0 @@
-from bisect import bisect_left
-from collections import deque
-from fileinput import input
-
-coords = [line.strip().split(",") for line in input()]
-grid = {complex(int(x), int(y)): t for t, [x, y] in enumerate(coords)}
-
-
-def solve(size, delay):
- q = deque([(0, 0)])
- seen = set()
- while q:
- curr, t = q.popleft()
- if curr in seen:
- continue
- if curr == complex(size, size):
- return t
- seen.add(curr)
-
- for d in [1, -1, 1j, -1j]:
- x = curr + d
- if not (0 <= x.real <= size and 0 <= x.imag <= size):
- continue
- if x in grid and grid[x] < delay:
- continue
- q.append((x, t + 1))
- return None
-
-
-silver = solve(70, 1024)
-# silver = solve(6, 12) # test.txt
-
-gold = ",".join(
- coords[
- bisect_left(
- list(range(len(grid))),
- True,
- key=lambda x: solve(70, x) is None,
- )
- - 1
- ]
-)
-
-print("silver:", silver)
-print("gold:", gold)