diff --git a/pythonsrc/day5/part1.py b/pythonsrc/day5/part1.py new file mode 100644 index 0000000..021a73f --- /dev/null +++ b/pythonsrc/day5/part1.py @@ -0,0 +1,53 @@ +print( + min( + [ + [ + [ + max(f) if max(f) != -1 else h + for f in [[g(h) for g in m[6]]] # final map + ][0] for h in [ + [ + max(f) if max(f) != -1 else h + for f in [[g(h) for g in m[5]]] # sixth map + ][0] for h in [ + [ + max(f) if max(f) != -1 else h + for f in [[g(h) for g in m[4]]] # fifth map + ][0] for h in [ + [ + max(f) if max(f) != -1 else h + for f in [[g(h) for g in m[3]]] # fourth map + ][0] for h in [ + [ + max(f) if max(f) != -1 else h + for f in [[g(h) for g in m[2]]] # third map + ][0] for h in [ + [ + max(f) if max(f) != -1 else h + for f in [[g(h) for g in m[1]]] # second map + ][0] for h in [ + [ + max(f) if max(f) != -1 else h + for f in [[g(h) for g in m[0]]] # first map + ][0] for h in [ + int(x) for x in open("resources/day5.txt").readlines()[0].split(":")[1].strip().split(" ") # seeds + ] + ] + ] + ] + ] + ] + ] + ] for m in [[ + list(map( + lambda d: lambda e: e + d[0] - d[1] if e >= d[1] and e < d[1] + d[2] else -1, + [[int(a) for a in b.split(" ")] for b in c.strip().split("\n")[1:]] # bullshit to get maps + )) + for c in open("resources/day5.txt").read().split("\n\n")[1:] # maps + ]] + ][0] + ) +) + +#min([[[max(f) if max(f) != -1 else h for f in [[g(h) for g in m[6]]]][0] for h in [[max(f) if max(f) != -1 else h for f in [[g(h) for g in m[5]]]][0] for h in [[max(f) if max(f) != -1 else h for f in [[g(h) for g in m[4]]]][0] for h in [[max(f) if max(f) != -1 else h for f in [[g(h) for g in m[3]]]][0] for h in [[max(f) if max(f) != -1 else h for f in [[g(h) for g in m[2]]]][0] for h in [[max(f) if max(f) != -1 else h for f in [[g(h) for g in m[1]]]][0] for h in [[max(f) if max(f) != -1 else h for f in [[g(h) for g in m[0]]]][0] for h in [int(x) for x in open("resources/day5.txt").readlines()[0].split(":")[1].strip().split(" ")]]]]]]]] for m in [[list(map(lambda d: lambda e: e + d[0] - d[1] if e >= d[1] and e < d[1] + d[2] else -1, [[int(a) for a in b.split(" ")] for b in c.strip().split("\n")[1:]])) for c in open("resources/day5.txt").read().split("\n\n")[1:]]]][0]) +