如何乘以数字列表的列表?
How do I multiply lists of list of numbers?
我知道如何使用 map 或 foldr 将数字列表相乘。
(define (multiply lst a)
(foldr (lambda (v r) (cons (* a v) r)) empty lst))
(check-expect(multiply (list 1 2 3) 5) (list 5 10 15))
我的问题是,如何将其应用于数字列表?
例如:
(multiply (list (list 3 1 4)(list 6)(list 3 5)))
(define (multiply lst a)
(map (λ (xs) (* a xs)) lst))
(define (f lol a)
(map (λ (xs) (multiply xs a)) lol))
(multiply '(1 2 3) -1)
(f '((3 1 4) (6) (3 5)) -1)
我知道如何使用 map 或 foldr 将数字列表相乘。
(define (multiply lst a)
(foldr (lambda (v r) (cons (* a v) r)) empty lst))
(check-expect(multiply (list 1 2 3) 5) (list 5 10 15))
我的问题是,如何将其应用于数字列表? 例如:
(multiply (list (list 3 1 4)(list 6)(list 3 5)))
(define (multiply lst a)
(map (λ (xs) (* a xs)) lst))
(define (f lol a)
(map (λ (xs) (multiply xs a)) lol))
(multiply '(1 2 3) -1)
(f '((3 1 4) (6) (3 5)) -1)