From 544cbbcb32e0865746a3faecd8b63ad65a3ce32b Mon Sep 17 00:00:00 2001 From: Taddeus Kroes <taddeuskroes@gmail.com> Date: Fri, 6 Nov 2015 18:42:54 +0100 Subject: [PATCH] Solve 57 --- 57.py | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100755 57.py diff --git a/57.py b/57.py new file mode 100755 index 0000000..bdfa3ac --- /dev/null +++ b/57.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python +# https://en.wikipedia.org/wiki/Continued_fraction#Some_useful_theorems + +def nom(n): + nexth = hp = hpp = 1 + + while n > 0: + nexth = 2 * hp + hpp + hpp = hp + hp = nexth + n -= 1 + + return nexth + +def denom(n): + kpp = 0 + nextk = kp = 1 + + while n > 0: + nextk = 2 * kp + kpp + kpp = kp + kp = nextk + n -= 1 + + return nextk + +def ndig(n, base=10): + i = 0 + + while n > 0: + i += 1 + n /= base + + return i + +count = 0 + +for n in xrange(1, 1001): + if ndig(nom(n)) > ndig(denom(n)): + count += 1 + +print count -- GitLab