(define (f n)
(define v (make-vector (+ 1 n) #f))
(define (get i)
(vector-ref v i))
(define (set i x)
(vector-set! v i x) x)
(define (g n)
(or
(get n)
(cond
((= n 0) (set 0 4))
((= n 1) (set 1 (/ 17 4)))
(else (set n (+ (- 108 (/ 815 (g (- n 1)))) (/ 1500 (* (g (- n 1)) (g (- n 2))))))))))
(g n))
(define (p e)
(print (list e (exact->inexact e))))
(p (f 0))
(p (f 1))
(p (f 2))
(p (f 3))
(p (f 80))
KGRlZmluZSAoZiBuKQogIChkZWZpbmUgdiAobWFrZS12ZWN0b3IgKCsgMSBuKSAjZikpCiAgKGRlZmluZSAoZ2V0IGkpCiAgICAodmVjdG9yLXJlZiB2IGkpKQogIChkZWZpbmUgKHNldCBpIHgpCiAgICAodmVjdG9yLXNldCEgdiBpIHgpIHgpCiAgKGRlZmluZSAoZyBuKQogICAgKG9yCiAgICAgKGdldCBuKQogICAgIChjb25kCiAgICAgICgoPSBuIDApIChzZXQgMCA0KSkKICAgICAgKCg9IG4gMSkgKHNldCAxICgvIDE3IDQpKSkKICAgICAgKGVsc2UgKHNldCBuICgrICgtIDEwOCAoLyA4MTUgKGcgKC0gbiAxKSkpKSAoLyAxNTAwICgqIChnICgtIG4gMSkpIChnICgtIG4gMikpKSkpKSkpKSkKICAoZyBuKSkKKGRlZmluZSAocCBlKQogIChwcmludCAobGlzdCBlIChleGFjdC0+aW5leGFjdCBlKSkpKQoocCAoZiAwKSkKKHAgKGYgMSkpCihwIChmIDIpKQoocCAoZiAzKSkKKHAgKGYgODApKQo=