Использование map
с несколькими аргументами будет повторять списки параллельно, а это не то, что вам нужно.
То, что вы хотите, это в основном добавить первый список к каждому из элементов второго списка. Итак, вы хотите что-то вроде:
(map (lambda (x) (append list1 (list x))) list2)
Обратите внимание, что добавление в конец списка - это операция O(n)
, поэтому, если вы сможете реструктурировать свой алгоритм, чтобы можно было добавлять каждый элемент в начале списка, это было бы лучше.