Como obter uma lista de todas as listas que contêm exatamente um elemento de cada lista de uma lista de listas

Como você deve ter entendido com o título, preciso de um pensamento inteligente aqui :)

eu tenho umList<List<Object>> objeto. Se você pensar nos objetos Object como números inteiros, poderá vê-lo assim:

{{1,2},{10,20,30},{100}}

Eu preciso obter todas as listas possíveis que contêm exatamente um elemento de cada lista, ou seja, apresentar o seguinte:

{{1,10,100},{1,20,100},{1,30,100},{2,10,100},{2,20,100},{2,30,100}}

É claro que você não sabe, em tempo de compilação, quantos itens as listas conterão; portanto, você não pode confiar em uma sobreposição defor rotações...

Como você chegaria a isso? As restrições de tempo não são relevantes para o meu problema, porque as listas provavelmente conterão poucos elementos.

questionAnswers(6)

yourAnswerToTheQuestion