diff options
Diffstat (limited to 'challenge-146/laurent-rosenfeld/python/ch-2.py')
| -rw-r--r-- | challenge-146/laurent-rosenfeld/python/ch-2.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/challenge-146/laurent-rosenfeld/python/ch-2.py b/challenge-146/laurent-rosenfeld/python/ch-2.py new file mode 100644 index 0000000000..7120a602a7 --- /dev/null +++ b/challenge-146/laurent-rosenfeld/python/ch-2.py @@ -0,0 +1,10 @@ +# for a node x/y less than 1, parent is x/(y-x) +# for a node x/y larger than 1, parent is (x-y)/x + +def find_parent(num, denom): + return [num, denom - num] if num < denom else [num - denom, denom] + +for test in ([5, 2], [2, 5], [3, 4], [3, 5]): + parent = find_parent(test[0], test[1]) + gd_parent = find_parent(parent[0], parent[1]) + print("Node", test, "has parent", parent, "and grand-parent", gd_parent) |
