생성일: 2019년 11월 30일
수정일: 2023년 07월 29일

4clojure - Simple Recursion (57)

  1. 문제
  2. 풀이

문제

(= __ ((fn foo [x] (when (> x 0) (conj (foo (dec x)) x))) 5))

풀이

'(5 4 3 2 1)

recursive 문제이다 풀이를 한다면 아래와 같다

(conj (conj (conj (conj (conj nil 1) 2) 3) 4) 5)
;; (conj (conj (conj (conj (1) 2) 3) 4) 5)
;; (conj (conj (conj (2 1) 3) 4) 5)
;; (conj (conj (3 2 1) 4) 5)
;; (conj (4 3 2 1) 5)
;; (5 4 3 2 1)
Tags: 4clojure Today I Learn