Add tasks for all the new languages
This commit is contained in:
parent
9dc3c2bb62
commit
bba7bfd280
13208 changed files with 134745 additions and 0 deletions
13
Task/Josephus-problem/EchoLisp/josephus-problem-1.echolisp
Normal file
13
Task/Josephus-problem/EchoLisp/josephus-problem-1.echolisp
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
;; input
|
||||
(define N 41)
|
||||
(define K 3)
|
||||
(define prisoners (apply circular-list (iota N)))
|
||||
(define last-one prisoners) ; current position
|
||||
|
||||
;; kill returns current position = last killed
|
||||
(define (kill lst skip)
|
||||
(cond
|
||||
((eq? (mark? lst) '🔫 )(kill (cdr lst) skip)) ;; dead ? goto next
|
||||
((zero? skip) (mark lst '🔫)) ;; all skipped ? kill
|
||||
(else (mark lst '😥 ) ;; relieved face
|
||||
(kill (cdr lst ) (1- skip))))) ;; skip 1 and goto next
|
||||
Loading…
Add table
Add a link
Reference in a new issue