Scheme 方案中的字谜

Scheme 方案中的字谜,scheme,racket,Scheme,Racket,有人试过在scheme中生成字谜吗 我有一个列表(abcdef),需要创建长度为4的字谜图。比如“AAAA”,“ABCD”,“BCBC”等等。 我完全糊涂了( 有人能告诉我怎么做吗???对于每个I=0..x其中x是字谜的长度,生成一个随机数r,这样0嗯…最近我解决了一个非常类似的任务-从(0 1)创建长度为N的字谜.这是我的解决方案。可能对您有帮助: ;; ;; (define (generate n)) -> create list of string where ;; * le

有人试过在scheme中生成字谜吗

我有一个列表(abcdef),需要创建长度为4的字谜图。比如“AAAA”,“ABCD”,“BCBC”等等。 我完全糊涂了(


有人能告诉我怎么做吗???

对于每个
I=0..x
其中
x
是字谜的长度,生成一个随机数
r
,这样
0嗯…最近我解决了一个非常类似的任务-从(0 1)创建长度为N的字谜.这是我的解决方案。可能对您有帮助:

;; 
;; (define (generate n)) -> create list of string where
;;    * length of each string is n
;;    * each symbol of string is '0' or '1'
;;    * the list has all possible combinations of symbols '0' and '1'

(define (generate n)
(generate-engine (list "0" "1") n))

(define (generate-engine lst n)
 (cond
  [(= n 1) lst]
  [else (generate-engine (append (add-to-list lst "0") (add-to-list lst "1")) (- n 1))])    
)

(define (add-to-list lst symbol)
 (cond
  [(empty? lst) empty]
  [else (cons (add-to-element (first lst) symbol) (add-to-list (rest lst) symbol))]))

(define (add-to-element element symbol)
 (string-append element symbol)
)

;; example 

(generate 3)
结果:

(list "000" "100" "010" "110" "001" "101" "011" "111")
基本情况 长度为1的字谜只是列表中的项目。返回列表

递归案例 长度为n的字谜是列表中附加到所有长度为
(-n1)
的字谜之后的每一项


因此,您应该能够编写一些基本情况和递归情况的示例。您可能需要一个helper函数。

您有迄今为止尝试过的任何方法吗?谢谢:)我对此完全失去了理智!!问题的一半在于找出语法和错误:Pi知道如何去做。复制永远不会帮助我在scheme:P上取得任何进展