Код Ревью

Сравни свои решения

    #| BEGIN (Write your solution here) |#
(require racket/set)

(define (cycle? x)
  (let ([visited (mutable-seteq)])
    (let loop ([node x])
      (cond
        [(not (mpair? node)) #f]
        [(set-member? visited node) #t]
        [else
         (set-add! visited node)
         (or (loop (mcar node))
             (loop (mcdr node)))]))))
#| END |#