時間があるときにatcoderといています。 clojureつかうととっても起動が遅いのかつらいですね。 そのなかでtrampoline使える問題ありました。

ここでいれました。

(defn card[cnt total lst]
  (if lst
    (if (even? cnt)
      #(card (inc cnt) (+ total (first lst) ) (next lst))
      #(card (inc cnt) (- total (first lst) ) (next lst))
      )
    total))
(println (trampoline card 0 0 lst)))