Comment detail

重複無し乱数 (Nested Flatten)
(print (bingo 10))
 => (2 4 8 10 6 7 5 9 3 1)
1
2
3
4
5
6
7
8
9
(defun bingo (n)
  (loop repeat n
        for rand = (loop 
                     (let* ((*random-state* (make-random-state t))
                            (rand (1+ (random n))))
                       (if (not (member rand lst))
                         (return rand))))
        collect rand into lst
        finally (return lst)))

Index

Feed

Other

Link

Pathtraq

loading...