langs a-z
This commit is contained in:
parent
db842d013d
commit
d066446780
11389 changed files with 98361 additions and 1020 deletions
33
Task/Balanced-brackets/TXR/balanced-brackets.txr
Normal file
33
Task/Balanced-brackets/TXR/balanced-brackets.txr
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
@(define paren)@(maybe)[@(coll)@(paren)@(until)]@(end)]@(end)@(end)
|
||||
@(do (defvar r (make-random-state nil))
|
||||
(defun shuffle (list)
|
||||
(for* ((vec (vector-list list))
|
||||
(len (length vec))
|
||||
(i 0))
|
||||
((< i len) (list-vector vec))
|
||||
((inc i))
|
||||
(let ((j (random r len))
|
||||
(temp (vecref vec i)))
|
||||
(set (vecref vec i) (vecref vec j))
|
||||
(set (vecref vec j) temp))))
|
||||
(defun generate-1 (count)
|
||||
(for ((i 0) chars) ((< i count) (cat-str (shuffle chars) "")) ((inc i))
|
||||
(push #\[ chars)
|
||||
(push #\] chars)))
|
||||
(defun generate-list (num count)
|
||||
(for ((i 0) list) ((< i num) list) ((inc i))
|
||||
(push (generate-1 count) list))))
|
||||
@(next :list @(generate-list 22 6))
|
||||
@(output)
|
||||
INPUT MATCHED REST
|
||||
@(end)
|
||||
@ (collect)
|
||||
@ (all)
|
||||
@parens
|
||||
@ (and)
|
||||
@{matched (paren)}@mismatched
|
||||
@ (end)
|
||||
@ (output)
|
||||
@{parens 15} @{matched 15} @{mismatched 15}
|
||||
@ (end)
|
||||
@(end)
|
||||
Loading…
Add table
Add a link
Reference in a new issue