今日の一行

今日の一行(お題)ビット変化列 への解答。

こんな単純な話なのだろうか?題意を読み間違えてる?ビット数を固定すると良いことがあるんだろうか。

(define (bitdiffs seq)
  (define (logdiff i j)
    (logcount (logxor i j)))
  (define (bitdiffs_ i s)
    (if (null? s)
        (list (logdiff i (car seq)))
        (cons (logdiff i (car s)) (bitdiffs_ (car s) (cdr s)))))
  (bitdiffs_ (car seq) (cdr seq)))