Adopted new convention from template
This commit is contained in:
parent
3eba4ddab6
commit
7771280215
@ -1,4 +1,4 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python
|
||||||
"""
|
"""
|
||||||
Created on 16 Jul 2022
|
Created on 16 Jul 2022
|
||||||
|
|
||||||
@ -14,6 +14,21 @@ from itertools import permutations
|
|||||||
from utils import timeit
|
from utils import timeit
|
||||||
|
|
||||||
|
|
||||||
|
def get_numbers(order: int, number: int) -> int:
|
||||||
|
return (number * (number - 1) * (order - 2) // 2) + number
|
||||||
|
|
||||||
|
|
||||||
|
poligonals: dict[int, set[str]] = {
|
||||||
|
o: set(str(get_numbers(o, n)) for n in range(150)) for o in range(3, 9)
|
||||||
|
}
|
||||||
|
|
||||||
|
four_digits_numbers: set[str] = {str(n) for n in range(10**3, 10**4)}
|
||||||
|
|
||||||
|
eligibles: dict[int, list[str]] = {
|
||||||
|
k: list(v & four_digits_numbers) for k, v in poligonals.items()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@timeit("Problem 61")
|
@timeit("Problem 61")
|
||||||
def compute():
|
def compute():
|
||||||
"""
|
"""
|
||||||
@ -43,19 +58,6 @@ def compute():
|
|||||||
heptagonal, and octagonal, is represented by a different number in the set.
|
heptagonal, and octagonal, is represented by a different number in the set.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def get_numbers(order: int, number: int) -> int:
|
|
||||||
return (number * (number - 1) * (order - 2) // 2) + number
|
|
||||||
|
|
||||||
poligonals: dict[int, set[int]] = {
|
|
||||||
o: set(str(get_numbers(o, n)) for n in range(150)) for o in range(3, 9)
|
|
||||||
}
|
|
||||||
|
|
||||||
four_digits_numbers: set[str] = {str(n) for n in range(10**3, 10**4)}
|
|
||||||
|
|
||||||
eligibles: dict[int, list[str]] = {
|
|
||||||
k: list(v & four_digits_numbers) for k, v in poligonals.items()
|
|
||||||
}
|
|
||||||
|
|
||||||
perms = permutations(eligibles.keys(), 6)
|
perms = permutations(eligibles.keys(), 6)
|
||||||
for perm in perms:
|
for perm in perms:
|
||||||
for a in eligibles.get(perm[0]):
|
for a in eligibles.get(perm[0]):
|
||||||
@ -74,9 +76,9 @@ def compute():
|
|||||||
eligibles.get(perm[5]),
|
eligibles.get(perm[5]),
|
||||||
):
|
):
|
||||||
ans.append([a, b, c, d, e, f])
|
ans.append([a, b, c, d, e, f])
|
||||||
|
|
||||||
return sum(map(int, ans[0]))
|
return sum(map(int, ans[0]))
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
print(f"Result for Problem 61 is {compute()}")
|
||||||
print(f"Result for Problem 61: {compute()}")
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user