Lisp: Jak uzyskać wszystkie możliwe kombinacje elementów z list znajdujących się na liście?
Muszę napisać funkcję w Common-Lisp, która pobiera listę list i zwraca listę zawierającą wszystkie możliwe kombinacje elementów z podlist.
Na przykład wywołanie funkcji na liście, takiej jak ((1 2) (1 2)), powinno zwrócić listę, taką jak ((1 1) (1 2) (2 1) (2 2)). Lista wprowadzania może mieć dowolną długość, a podlisty nie są gwarantowane, aby miały tę samą długość.
Wiem, jak to uzyskać za pomocą sparowanych elementów z podlisty (wprowadzanie ((1 2) (1 2)) zwraca ((1 1) (2 2)), ale to nie jest wystarczająco dobre dla algorytmu spójności łuku Jestem próbuję pisać, a ja utknąłem.
Dziękuję Ci.