From 89b75091efcc8ab7ec62564a9dbe319cb0552eba Mon Sep 17 00:00:00 2001 From: Roger Bell_West Date: Mon, 10 Jan 2022 10:58:14 +0000 Subject: Solutions for challenge #147 --- challenge-147/roger-bell-west/python/ch-2.py | 41 ++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 challenge-147/roger-bell-west/python/ch-2.py (limited to 'challenge-147/roger-bell-west/python/ch-2.py') diff --git a/challenge-147/roger-bell-west/python/ch-2.py b/challenge-147/roger-bell-west/python/ch-2.py new file mode 100755 index 0000000000..83f5c48bba --- /dev/null +++ b/challenge-147/roger-bell-west/python/ch-2.py @@ -0,0 +1,41 @@ +#! /usr/bin/python3 + +def pentagon(n): + return int(n*(3*n-1)/2) + +def pentpair(): + fpent=[0] + rpent=dict() + mx=0 + a=1 + while 1: + while mx < a: + mx += 1 + fpent.append(pentagon(mx)) + rpent[fpent[mx]]=mx + for b in range(1,a): + d=fpent[a]-fpent[b] + if d < fpent[b]: + break + if d in rpent: + s=fpent[a]+fpent[b] + while s > fpent[mx]: + mx += 1 + fpent.append(pentagon(mx)) + rpent[fpent[mx]]=mx + if s in rpent: + print("P({:d}) + P({:d}) = {:d} + {:d} = {:d} = P({:d})".format( + a, b, + fpent[a], fpent[b], + s, + rpent[s])) + print("P({:d}) - P({:d}) = {:d} - {:d} = {:d} = P({:d})".format( + a, b, + fpent[a], fpent[b], + d, + rpent[d])) + quit() + a += 1 + + +pentpair() -- cgit