Day 1 (part 2 renaming #2)

This commit is contained in:
Sebastian Seedorf
2020-12-02 12:08:25 +01:00
parent 414cbef549
commit f9de896ba3
2 changed files with 11 additions and 7 deletions

View File

@@ -1,17 +1,21 @@
import math import operator
from functools import reduce
items = (int(x.strip()) for x in open("input.txt")) items = (int(x.strip()) for x in open("input.txt"))
values = {(2020, 3)} values = {(2020, 3)}
tree = dict() tree = dict()
def tree_up(idx, step=1, offset = 0): def tree_up(idx, step=1, offset=0):
print(idx, step)
nxt = tree[(idx, step)] if (idx, step) in tree else None nxt = tree[(idx, step)] if (idx, step) in tree else None
appendix = [] if nxt is None else tree_up(nxt+idx, step=step+1, offset=idx) appendix = [] if nxt is None else tree_up(nxt+idx, step=step+1, offset=idx)
return [idx - offset] + appendix return [idx - offset] + appendix
def prod(iterable):
return reduce(operator.mul, iterable, 1)
for item in items: for item in items:
tmp_values = set(values) tmp_values = set(values)
for elem in values: for elem in values:
@@ -21,12 +25,12 @@ for item in items:
print("Found [{}]: Sum={}, Product={}".format( print("Found [{}]: Sum={}, Product={}".format(
", ".join(map(str, vals)), ", ".join(map(str, vals)),
sum(vals), sum(vals),
math.prod(vals) prod(vals)
)) ))
exit() exit()
elif new[0] < 0 or new[1] < 0: elif new[0] < 0 or new[1] < 0:
# target value too low or to many sums # target value too low or to many sums
continue pass
else: else:
tree[new] = item tree[new] = item
tmp_values.add(new) tmp_values.add(new)

View File

@@ -2,7 +2,7 @@
<module type="WEB_MODULE" version="4"> <module type="WEB_MODULE" version="4">
<component name="FacetManager"> <component name="FacetManager">
<facet type="Python" name="Python"> <facet type="Python" name="Python">
<configuration sdkName="Python 3.8" /> <configuration sdkName="Python 3.6" />
</facet> </facet>
</component> </component>
<component name="NewModuleRootManager" inherit-compiler-output="true"> <component name="NewModuleRootManager" inherit-compiler-output="true">
@@ -11,6 +11,6 @@
<excludeFolder url="file://$MODULE_DIR$/venv" /> <excludeFolder url="file://$MODULE_DIR$/venv" />
</content> </content>
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Python 3.8 interpreter library" level="application" /> <orderEntry type="library" name="Python 3.6 interpreter library" level="application" />
</component> </component>
</module> </module>