У меня есть следующий список пар кортежей:
Input: [(0,1),(1,3),(3,4),(4,6)]
Мне нужна комбинация всех путей от 0 до 6 в виде списка, подобного (в данном случае):
tupple pairs for 1st path: [(0,1),(1,3),(3,4),(4,6)]
tupple pairs for 2nd path: [(0,1),(1,3),(3,6)]
tupple pairs for 3rd path: [(0,3),(3,4),(4,6)]
tupple pairs for 4th path: [(0,1),(1,4),(4,6)]
Данное условие максимальной разницы между двумя парами кортежей равно 3. (т. Е. Максимальное условие заключается в том, что для любой пары кортежей левый элемент следующей пары менее чем равен 3, чем левый элемент текущей пары кортежей. Например, (0, x) может иметь следующую пару в виде (1, y), (2, z) & (3, p))
Мне нужен вывод в виде списка, например:
Expected Output: [0,1,3,4,6], [0,1,3,6], [0,3,4,6], [0,1,4,6]
Мой подход для этого - условное сцепление пар кортежей для формирования желаемых списков.Не могу использовать 'itertools.chain' здесь.Пожалуйста, помогите!