From e9f829a6a8897294f5045bd7991a57f29781c104 Mon Sep 17 00:00:00 2001 From: kwout Date: Tue, 5 Dec 2023 10:46:17 -0500 Subject: [PATCH] 2023 day 5 part 1 solved --- 2023/3.py | 2 +- 2023/5.py | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 2023/5.py diff --git a/2023/3.py b/2023/3.py index 59a8da9..f7438b1 100644 --- a/2023/3.py +++ b/2023/3.py @@ -1,4 +1,4 @@ -lines = [i for i in open("input.txt", 'r').read().splitlines()] +lines = open("input.txt", 'r').read().splitlines() sum = 0 sum2 = 0 diff --git a/2023/5.py b/2023/5.py new file mode 100644 index 0000000..1f53209 --- /dev/null +++ b/2023/5.py @@ -0,0 +1,16 @@ +data = open("input.txt", 'r').read().split("\n\n") +seeds = [int(i) for i in data[0][7:].split()] +maps = [[[int(i) for i in numb.split()] for numb in block.splitlines()[1:]] for block in data[1:]] +#[destinationStart, sourceStart, length] + +for m in maps: + newSeeds = list(seeds) + for line in m: + target, source, length = line + for i in range(len(seeds)): + seed = seeds[i] + if seed in range(source, source+length): + newSeeds[i] = seed + (target - source) + seeds = newSeeds + +print(min(newSeeds)) \ No newline at end of file