Hofstadter Figure-Figure sequences: Difference between revisions

Added PicoLisp
(Added PicoLisp)
Line 230:
(1+i.1000) -: /:~ (ffr 1+i.40), ffs 1+i.960
1</lang>
 
=={{header|PicoLisp}}==
<lang PicoLisp>(setq *RNext 2)
 
(de ffr (N)
(cache '(NIL) (pack (char (hash N)) N)
(if (= 1 N)
1
(+ (ffr (dec N)) (ffs (dec N))) ) ) )
 
(de ffs (N)
(cache '(NIL) (pack (char (hash N)) N)
(if (= 1 N)
2
(let S (inc (ffs (dec N)))
(when (= S (ffr *RNext))
(inc 'S)
(inc '*RNext) )
S ) ) ) )</lang>
Test:
<lang PicoLisp>: (mapcar ffr (range 1 10))
-> (1 3 7 12 18 26 35 45 56 69)
 
: (=
(range 1 1000)
(sort (conc (mapcar ffr (range 1 40)) (mapcar ffs (range 1 960)))) )
-> T</lang>
 
=={{header|Python}}==
Anonymous user